FarmBot Genesis v1.4 and Genesis XL Update

Hey FarmBot community,

I wanted to give you all an update on the progress of the new v1.4 FarmBot kits because many of our new customers are eager to get started with it, and some of you older customers enjoy seeing our progress as well :slight_smile:

Manufacturing

We’re in the final stretches of our largest manufacturing run yet where we’re making 300 Genesis v1.4 kits and 200 Genesis XL kits! I visited our manufacturing partners a week and a half ago for quality assurance checks and everything is coming together quite nicely. Below is a photo of a FarmBot we built with almost all of the final production parts:

Please disregard the non-standard method and additional hardware we used to secure the tracks to each other and mount the toolbays. We did this because we were not working with a raised bed.

While 95% of the parts are finished up and ready to go, there were some minor issues with the new electronics box injection mold tooling that is requiring some re-work time. In a nutshell, some of the mold tooling needs to be further machined in order to add material to the final box component as we designed it. Without this re-work, there would be a high likelihood of the box latch points failing, and the sealing between the lid gasket and the box wouldn’t be as good.

In the photo below you can see the missing material from the box latch point, leaving a small slit that shouldn’t be there. The following CAD model screenshot shows what additional material is meant to be there. In the photo, you can also see the break points in the gasket sealing ridge where the ejector pins push the part out of the mold. These ejector pins need to have a slot machined in them to allow additional plastic to enter the mold resulting in a continuous gasket ridge as seen in the CAD model.

We’re estimating that the box mold tooling fixes, injection molding production, and electronics box assembly will take 10 to 12 more days, at which point all parts will be ready to go.

v1.4 Improvements

While we won’t publish the v1.4 documentation, CAD models, and entire list of improvements until the kits leave our warehouse, here is a sneak peak at some of the new hardware:

The entire electronics box including the PCBs and internal wiring will come pre-assembled and tested. This is a huge step forward in making FarmBot a more consumer friendly machine to work with. It reduces the intimidation factor that many of our prospective customers have who are inexperienced in working with electronics, and it brings us closer to our longer term vision of “FarmBot as an appliance”. Furthermore, pre-assembly and testing will reduce the number of customer assembly errors and the need to send replacement parts.

As you can see in the images above and below, the box now features five push-buttons and four LED indicator lights which are connected to the Raspberry Pi’s GPIO via an adapter board. Two buttons and two LEDs will be reserved for E-Stop, Unlock, Sync Status, and Connection Status, while the remaining buttons and lights will be user customizable. Some examples of how you can use these: make a demo sequence that executes upon button press, flash an LED 5 seconds before a sequence is going to begin, turn a peripheral on/off with a button, tell the FarmBot to Find Home with a button press, etc.

The v1.4 electronics will include a new version of the Farmduino with an STM32 co-processor to monitor the rotary encoders at a much higher frequency than was possible with the Atmega 2560 chip. More details on the improvements, as well as the complete schematics will come with the documentation.

The new kits include a new UTM with a PCB and pogo pins. Gone are the days of electronic screws with zip-ties! Furthermore, the new UTM will come fully pre-assembled so users can just mount it and plug in the UTM cable. The design is backwards compatible with the v1.2 and v1.3 tools. How cool do those matte black PCBs look? :sunglasses:

New FarmBot Warehouse + Office

In preparation for our largest manufacturing run yet, our growing inventory of individual and replacement parts, and our need for additional R&D space, last week we moved into a new 4,000 square foot facility in San Luis Obispo. With the help of several friends and a bunch of truck and van trips across town, we’re now settled into our new space. More pictures and a video to come!

FarmBot Chosen as a 2018 Red Herring Top 100 North America Winner

June 20, 2018, Los Angeles, U.S. – Red Herring today announced the winners of its Top 100 North America 2018 event, recognizing FarmBot as one of the continent’s most exciting and innovative private technology companies.

The winners, celebrated at a special awards ceremony at the Marina Del Rey Hotel, have been chosen from thousands of entrants, whittled down to hundreds making the trip to California. The ceremony, led by Red Herring chairman Alex Vieux, was preceded by two days of keynote speeches, discussions and finalist presentations.

Companies were judged by industry experts, insiders and journalists on a wide variety of criteria including financial performance, innovation, business strategy and market penetration. Winners ran the gamut of verticals, from fintech and marketing to security, IoT and many more.

Red Herring’s editors have been evaluating the world’s startups and tech companies for over two decades. It gives them the ability to see through the industry’s hype, to pick firms that will continue on a trajectory to success. Brands such as Alibaba, Google, Kakao, Skype, Spotify, Twitter and YouTube have all been singled out in Red Herring’s storied history.

“2018’s crop of Top 100 winners has been among our most intriguing yet,” said Vieux. “North America has led the way in tech for so many years, and to see such unique, pioneering entrepreneurs and companies here in California, which is in many ways the heartland of the industry, has been a thrilling experience.

“What has excited me most is to see so many people forging niches in high-tech and cutting edge sectors,” added Vieux. “Some of the technical wizardry and first-rate business models on show here at the conference has been fantastic to learn about. We believe FarmBot embodies the drive, skill and passion on which tech thrives. FarmBot should be proud of its achievement: the competition was incredibly strong.”

Following FarmBot’s Top 100 win it is invited to showcase itself at the Top 100 Global event in October. Red Herring is dedicated to support FarmBot’s continued path to success and innovation.

June 7, 2018 Software Update

We updated my.farm.bot and FarmBot OS today with the following new features and fixes:

Farm Designer:

  • Added a button to the crop info panel to create a plant in the garden map at FarmBot’s current position.

Sequences:

  • Added an input form to Run Farmware steps if the selected Farmware accepts inputs. These inputs allow a Farmware with inputs to be scheduled or run multiple times with specific inputs each time.

Logs:

  • Increased browser performance when generating many logs.
  • A warning log will display and a “cooldown” period begins if a looping issue creates too many logs at once. The rate limits are 1k logs/minute, 10k logs/hour, and 100k logs per day, at which point logs will no longer be delivered or stored until the next time period.
  • Removed outdated filter of logs containing the word filtered.
  • Fixed bug where emergency stop emails were sent twice for the same event.

FarmBot OS (v6.4.2):

  • Pre-installed a new farmware_tools package to provide Farmware with a simple interface to common commands. To use the new functions, just import farmware_tools as shown in the Farmware development documentation. (You can also pip install farmware_tools for local development.)
  • If FarmBot OS reboots for any reason and a fat32-formatted flash drive is plugged in, FarmBot OS will store a copy of its logs on the flash drive.

May 9, 2018 Software Update

We updated my.farm.bot today with the following new features and fixes:

App:

  • You can now download all of your Web App account data by pressing a button on the Account page. Exported data is delivered in JSON format to your email address as a file attachment.

Controls:

  • Added an option to change the home button command from Move Home to Find Home. Thanks @Diman4os for the nudge on this feature.

Device:

  • (FarmBot OS v6.4.1) Added a hardware parameter to invert value (in addition to swapping position) of end-stops. This allows the use of normally open or normally closed endstops.

FarmBot OS (v6.4.1):

  • Regimens are now re-indexed when a sequence is edited and synced.
  • New network configuration workflow to allow more control over interface settings.

April 27, 2018 Software Update

We updated my.farm.bot today with the following new features and fixes:

Farm Designer:

  • Added an option to rotate the garden map 90 degrees by swapping the X and Y axes. The option can be found in the Controls page Move widget settings menu.

  • The left panels can now be hidden by pressing the MAP navigation tab to enter a map-only garden view.

  • Error messages during deletion of multiple plants now indicate the plants and the Sequences in which they are used.
  • Fixed garden map plant move and placement actions for some browsers.

Farm Events:

  • FarmBot OS v6.4.0 Allow back-scheduling of Regimen Farm Events. Since Regimens begin at the start of day, the form has been simplified to a date input.

  • Improved “next run” notification text:
    • Display simplified message when auto-sync is enabled.
    • Show calculated time of the next scheduled Regimen item execution.

Controls:

  • Added option to Move widget settings menu to swap X and Y axis jog buttons. (Also reorients the garden map; see Farm Designer.)

  • Controls pop-up jog buttons now disable when FarmBot is busy, like the Move widget jog buttons.

Tools:

  • Indicate the ability to delete a tool in the tool form. (To be deleted, a tool must be inactive.)

Logs:

  • Fixed bug where logs would not display when filter settings were decreased.

Account:

  • More descriptive account password change form error notifications.

FarmBot OS (v6.4.0):

  • Regimens will now resume execution upon boot if they have been scheduled in the past. This allows back-scheduling of Regimens in Farm Events and persistence of Regimens across reboots.
  • Improved formatting of the alert email sent if FarmBot has been emergency stopped for over 10 minutes.
  • Added support for the new Raspberry Pi 3 B+.

April 4, 2018 Software Update

We updated my.farm.bot today with the following new features and fixes:

App:

  • FarmBot OS v6 is now required to sync Web App data to FarmBot. This requirement has allowed new features to be added, and since FarmBot OS v6 has been released over 60 days ago, the legacy support period for the previous FarmBot OS version has ended.
  • ‎An upgrade reminder toast will now display when legacy FarmBot OS versions are approaching the end of their legacy support period.
  • ‎FarmBot OS will now factory reset upon password change, allowing FarmBot to be configured with the new account credentials.
  • ‎Page errors will now attempt to restrict the error to only the page component that experienced the error.
  • Continued improvements to internationalization thanks to contributions on GitHub. (Interested in adding translations?)

Farm Designer:

  • Added App setting to display approximate movement and watering history while the garden map is open.

  • Display FarmBot’s position in the map when the virtual FarmBot travels beyond the edge of the map.

Farm Events:

  • Empty Regimen Farm Events are now rendered in the calendar to allow editing or deletion.

Sequences:

  • Display an indicator next to names in the sequence list when the sequence is a dependency of another resource. (Currently only updates upon app load.)
  • Emailed messages (Send Message command) now include the chosen device name.
  • ‎All resources that use a sequence are now displayed in the “deletion prevented” error toast.

Regimens:

  • Display an indicator next to names in the regimen list when the regimen is a dependency of another resource (Farm Events). (Currently only updates upon app load.)

Logs:

  • Log filtering now occurs in the cloud, increasing performance and allowing more logs to be returned.

Today’s software release does not include an update to FarmBot OS.

March 15, 2018 Software Update

We updated my.farm.bot today with the following new features and fixes:

App:

  • Added an option to have the browser also read aloud log messages on the “Speak” channel that are spoken by FarmBot.

  • Added take photo button to the controls pop-up.
  • Improvements to internationalization thanks to contributions on GitHub. (Interested in adding translations?)
  • An animation is now shown during syncing.
  • Account verification email improvements and bug fixes.
  • A large amount of background work was done to support future app features including better dependency tracking, sensors, and settings storage.

Farm Designer:

  • Render camera photos in the garden map if the camera has been calibrated. Map images can be filtered by date and time via the garden map menu using date and time inputs or a date slider. Photos will only be displayed in the map if they match the camera calibration data.

  • Added plant status (“planned”, “planted”, “harvested”). Planted at time now changes to the current time when a plant’s status is changed to “planted”. (Thanks to renaud and creimers for the feature requests.)

  • Fixed major grid line placement with dynamic map enabled.
  • Show current position upon UTM figure hover.

Farm Events:

  • Improved dropdown menu for Sequence or Regimen selection.

Controls:

  • FarmBot OS 6.3.0 Added a new Sensors widget. Add sensors to take and view sensor readings.

Device:

  • FarmBot OS configuration settings (FarmBot OS 6.2.0) and FarmBot firmware settings (FarmBot OS 6.3.0) are now attached to your web app account, which means they will persist across SD card flashes and can be edited even when FarmBot is offline. When FarmBot is online and a setting is changed, the input will indicate when the App setting has been received by FarmBot.
  • FarmBot OS 6.3.0 Added a button to download firmware settings in the Hardware widget. Clicking the button allows copying of all settings to paste externally if desired (for troubleshooting, sharing, etc.).

Sequences:

  • Added a Farmware selection drop-down to the Run Farmware step in addition to manual input. (Thanks to Klimbim for the feature request.)
  • Improved IfRead Pin, and Write Pin pin selection drop-downs.
  • FarmBot OS 6.3.0 Peripherals and sensors can now be selected in IfRead Pin, and Write PinSequence steps instead of having to manually input a pin number.

  • Improved Move Absolute step Import coordinates from dropdown menu.

FarmBot OS (v6.2.0):

  • FarmBot OS settings (logs options, auto update and sync) are now stored in the App.
  • Sync speed and online detection improvements.

FarmBot OS (v6.3.0):

  • FarmBot firmware settings are now stored in the App.
  • FarmBot can now be e-stopped when homing on boot.
  • Added support for Sensors and Peripherals in sequences.
  • Fixed OS update bugs.

Ready to get your own FarmBot?

We’re now manufacturing v1.4 FarmBot Genesis and Genesis XL devices. Visit our shop to learn more and place your pre-order before our March sale ends!

Full Online Shop, Now Open!

Our online shop is now stocked up with partial kits and all individual parts in addition to our offering of complete FarmBot kits. For the DIY builders who have been sourcing and building many of the parts on your own but needed a few specialty items from us, now is your chance to get everything else you need to finish up your FarmBot.

Make sure to use the coupon code NEWS-15 during checkout to get 15% off your order. Coupon is not valid for complete FarmBots and expires at the end of February

January 29, 2018 Software Update

We updated my.farmbot.io and FarmBot OS today with the following new features and fixes:

App:

  • Fixed bug that limited the ability to disable internationalization. (Thanks Klimbim for the bug report.)
  • Improved recovery from loading errors.

Farm Designer:

  • Change icons for plants selected for deletion to grayscale.

  • Render toolbay slots in the garden map if a slot orientation is selected for the slot on the Tools page.

Device:

  • Gray out parameters that are not used unless enabled by a different parameter. For example, encoder options are grayed out if encoders are disabled.
  • Fixed bugs related to device connectivity display.

Sequences:

  • Display a warning if the current hardware settings conflict with Find Home or Move Absolute step inputs. Hover over the warning symbol for additional information.

  • Added Speak channel to sequence Send Message commands. If selected, FarmBot will speak the message over the audio port.

Tools:

  • Added toolbay slot orientation selection dropdown menu. This and the use current location feature have been moved into a toolbay slot options pop-up menu.

FarmBot OS (v6.1.2):

  • Send an email if FarmBot has been emergency stopped for more than 10 minutes.
  • Improved movement complete response time (Thanks Klimbim for the bug report.)
  • Misc. OS update bug fixes.

January 21, 2018 Software Update

We updated my.farmbot.io and FarmBot OS today with the following new features and fixes:

App:

  • Dates and times (Farm Events, Logs) now match FarmBot’s local timezone (set in the Device widget).
  • Web app settings are now stored on the server instead of the browser. This means app settings will now persist across all of your devices and browsers. Some settings may need to be updated.
  • Improved offline detection.
  • E-STOP is now greyed out when FarmBot is offline.
  • Updated documentation links.
  • Fixed a bug related to losing new unsaved changes created immediately after saving old changes.
  • Misc. bug fixes.

Farm Designer:

  • New “Move to coordinate” mode. Enter the mode via a button in the map menu, select a location in the map, and click the button to move FarmBot to that location. The z-axis will remain at the current height, or can be chosen by using the Z coordinate input box.

  • Minor bug fixes and improvements related to selecting and deselecting plants across modes.
  • Plant spread circles using default values are now styled differently.
  • Made map zoom increments more even.

Farm Events:

  • Improved calendar performance.
  • The number of calendar items hidden for performance reasons is now displayed in the last repeating event item.
  • Improved handling of farm events that generate no calendar items.

Controls (and controls pop-up):

  • Move widget jog buttons are now disabled when movement is not possible in that direction (i.e. at axis end with STOP AT HOME or STOP AT MAX enabled).
  • Jog button hover text now includes the jog distance and direction in addition to the axis.

Device:

  • Display important changes to FarmBot OS by clicking Release Notes.

  • Show latest available FarmBot OS version upon update button hover. (Thanks to Klimbim for the feature request.)
  • Improved update performance of board type display.
  • Moved FarmBot OS auto update toggle to a new row.

Sequences:

  • Scroll to bottom of a sequence when adding steps.

FarmBot OS (v6.1.0):

  • Fixed a bug causing SD card storage space to run out. Please update your FarmBot by clicking Updatein the Device widget. If your FarmBot is offline, please flash the SD card with the FarmBot OS v6.0.1 image [direct link], then update by clicking Update in the Device widget.

New Year, New Domain

This year we decided to switch over to a new domain name: farm.bot. When we first heard about the .bot top level domains, we got pretty excited at the prospect of registering and using farm.bot for all of our operations. However, the .bot TLD wasn’t available until just about a month ago. So as soon as we got it, we began making the transition. As of today, you can find all of our primary sites at the following new locations instead of our old farmbot.io domain.

We plan to switch over our company email addresses as well, and eventually the web application URL to my.farm.bot but we’re not there yet. Stay tuned for future announcements!

Thank you to all of our first-generation supporters

Dear 1st generation FarmBot supporters,

In July of 2016 we launched our first product to the world: FarmBot Genesis. We didn’t know what to expect when we made the kits available for pre-order on our website, but you all made it clear that we were on to something.

In the first month we smashed our crowdfunding goal of $100,000 eight times over and by the end of August we had sold $1M+ worth of FarmBot kits destined to customers all over the world. We went to manufacture 350 v1.2 devices, which we sold out of in January of 2017, and later shipped in March and April.

Since then we’ve designed, manufactured, and shipped a second production run of 250 improved v1.3 devices, and now we find ourselves finishing up a crowdfunding campaign for the latest v1.4 design, as well as the first FarmBot Genesis XL kits.

None of this would have been possible without your early contribution and support, and we sincerely thank you for taking a leap of faith with us.

As a token of gratitude, we would like to offer all of you a $200 coupon code to our online shop that you can use to upgrade your bot or even get another one! The coupon will not expire, however, it is single-use so to get the most out of it your cart subtotal should be close to $200 or more. Please note that the coupon will not apply to shipping charges and international customers are still responsible for any import taxes.

While we don’t have a ton of products in our online shop yet, we do plan to add many more partial kits, upgrade kits, and individual parts over the coming months, so you may want to wait a bit to use the coupon.

The coupon code is farmbot-early-adopter-thank-you and it can be applied at checkout. Heads up: it will only work if you check out with the same email address you used with your original FarmBot pre-order. If you need to use a different email address, please let us know.

Thank you again for joining us on this journey. We look forward to what’s next!

December 21, 2017 Software Update

Over the next two days, we will be rolling out updates to both my.farmbot.io and FarmBot OS. The updates are centered around two main features: an auto-sync option and improved logging. Below is a summary of some of the new features and fixes. Features marked with FarmBot OS 6.0.1 will only be available once FarmBot OS is updated.

App:

  • FarmBot OS 6.0.1: Aded an option to enable auto-syncing between the Web App and FarmBot OS, instead of choosing when to manually sync data. This community-requested feature is useful for getting small stable changes to FarmBot quickly, but it is recommended to use manual sync when making large changes that are not yet ready to be executed by FarmBot. The toggle is available in the Device widget of the Device page. (Thanks to creimers for the feature request.)
  • Add Logs page to navigation bar.

Farm Designer:

  • Cache OpenFarm plant icons in the browser for faster repeated icon load times.
  • Improved Farm Event calendar item presence with respect to current time.

Controls:

  • Added a button to add all default Farmduino peripherals.
  • FarmBot OS 6.0.1: Scaled encoder feedback now displays in millimeters instead of steps.
  • FarmBot OS 6.0.1: Fixed peripheral pin status display bug after emergency stop. (Thanks to Klimbim for the bug report.)

Device:

  • FarmBot OS 6.0.1: Added widget to set and remove Raspberry Pi GPIO pin bindings to allow start of a sequence by pressing a physical button (or by motion sensor output).
  • FarmBot OS 6.0.1: Device widget settings to adjust or disable factory reset on WiFi network connection/configuration error. This is useful to prevent FarmBot from needing to be reconfigured if its Internet connection goes out temporarily.
  • FarmBot OS 6.0.1: Added a homing speed parameter in the motors section of the Hardware widget.
  • Added Pin Guard to hardware settings. Use pin guard to automatically turn pins off that are accidentally left on.

Sequences:

  • Only allow importing locations from active tools (tools in tool slots) in Move Absolute steps.
  • Fixed a bug where the ghost image displayed during drag and drop of Sequence commands was not showing.
  • Added the ability to specify a reduced speed for relative and absolute movements.

Tools:

  • Added a button to add all standard FarmBot tools.

Farmware:

  • Color range selection interface bug fixes and improvements.
  • Camera calibration and weed detection widgets now use the Device is offline overlay when FarmBot OS is disconnected.
  • FarmBot OS 6.0.1: Farmware input forms and API changes. Automatically add an input form on the Farmware page for any Farmware that requires input values (specified via config in a Farmware’s manifest file). (Additional Farmware development details)

Logs:

  • FarmBot OS 6.0.1: Log messages are now saved to the backend individually as they are sent, rather than being batch uploaded.
  • FarmBot OS 6.0.1: Show bot position for each log message.
  • FarmBot OS 6.0.1: Verbosity levels for log messages. (Thanks to mdingena for the suggestion.) Logs can be filtered by verbosity level in the ticker and Logs page via the Logs page filter menu. Two presets are included in addition to the more granular level adjustments: normal and max verbosity. The higher the verbosity number, the more logs you will see.
  • FarmBot OS 6.0.1: Ability to disable Sequence Complete log messages (Thanks to Klimbim for the feature request.)
  • FarmBot OS 6.0.1: Ability to toggle sequence step execution and sequence end log message creation.
  • FarmBot OS 6.0.1: Axis homing complete log messages (Thanks to Klimbim for the feature request.)
  • FarmBot OS 6.0.1: Ability to toggle Arduino communication log messages: commands sent, responses, and debug messages.
  • Improve formatting for long log messages in the log ticker and on the Logs page.

FarmBot OS and Firmware:

  • FarmBot OS 6.0.1: FarmBot OS has been extensively reworked to improve performance and stability and to allow for new auto-sync, logging, and other new features.
  • FarmBot OS 6.0.1: Raspberry Pi to Farmduino/Arduino communication has been improved to reduce movement and communication errors.
  • FarmBot OS 6.0.1: Axis calibration now moves back to the home position after determining axis length.
  • FarmBot OS 6.0.1: Encoders now keep track of FarmBot’s position even when the motors are not running.
  • FarmBot OS 6.0.1: FarmBot OS Configurator has been redesigned to increase browser compatibility and stability. Configuration is now a multi-step process with an improved interface.
  • FarmBot OS 6.0.1: Increased the maximum allowed value for the firmware axis length parameters.

Take a closer look at FarmBot Genesis XL

We’ve gone to great lengths to design, manufacture, and source only the highest quality components for all of our FarmBot kits. Take a look at the images below to learn more about our premium hardware.

Our plates and brackets are stamped and machined out of high grade aluminum alloys. Then they are tumble polished to remove burrs, sandblasted to remove surface defects, and anodized to achieve a premium quality aesthetic and feel.

Our custom Farmduino board and four NEMA 17 stepper motors with rotary encoders power FarmBot’s movements, while the Raspberry Pi 3 serves as the web-connected brain.

All fasteners are made of stainless steel, allowing them to stand up to the outdoor environment without rusting or corroding.

FarmBot’s plastic components have been injection molded or machined from a blend of ABS that is both tough and able to withstand UV rays.

Now is your time to get involved

Pre-order FarmBot Genesis XL during December to save $800 on the 1st manufacturing run of our most productive FarmBot yet!

November 22, 2017 Software Update

We updated my.farmbot.io today with the following new features and fixes:

App:

  • Improved multi-session support: stability and performance improvements for having the app open across multiple web browsers.
  • Changed many parts of the app to support the upcoming auto-sync feature.
  • Added a dedicated Logs page to view and filter log messages by type. Access it via the link in the expanded ticker.

Farm Designer:

  • Added a virtual FarmBot E-STOP visual indicator.

Farm Events:

  • Don’t display Delete button when creating a new Farm Event.

Sequences:

  • Adjusted styling of disabled sequence test button.
  • Dragging an item from the sequence list into a sequence will add an execute step for that sequence.

Sequences and Regimens:

  • Fixed sequence and regimen copy navigation/selection bug.
  • Fixed navigation bar bug caused by some sequence and regimen names.

Farmware:

  • Photo widget now auto-updates with new photos.

Today’s software release does not include an update to FarmBotOS.

November 1, 2017 Software Update

In addition to switching message brokers yesterday, we updated my.farmbot.io today with the following new features and fixes:

App:

  • Improved account creation workflow.
  • Autmatically refresh when toggling internationalization.
  • Misc. visual and bug fixes.

Farm Designer:

  • Increase range of map zoom out (two additional levels).
  • Display visual indicators for peripheral state in the garden map. Currently supported peripherals include LIGHTSVACUUM and WATER.

Farm Events:

  • Set initial values for start and end time in the future.

Sequences:

Sequences and Regimens:

  • Only show the sequence commands and scheduler panels when a sequence or regimen is selected.

Farmware:

  • Added a toggle to view first party farmware.
  • Add gear menu with button to (re)install first-party farmwares.
  • Add links to software documentation in Weed Detector and Camera Calibration widget help text.

Today’s software release does not include an update to FarmBotOS.

Switch to RabbitMQ Message Broker

Today we made a big transition today to using RabbitMQ – the world’s most popular open-source message broker. It has a ton of features we’re excited to start using, and this is laying the foundation needed for the auto-sync feature that won the community vote a while back. For all FarmBots that are using my.farmbot.io and have FarmBotOS v5.0.5 or later installed, your device has most likely already switched over to the new message broker automatically, and there is no need to make any changes on your end. For devices that have FarmBotOS v5.0.4 or older, you will need to power cycle your FarmBot to have it connect to the new broker (unplug power, wait 10 seconds, plug it back in). Check the connectivity panel on the Device page to see if your FarmBot has successfully connected to the new message broker.

Please note: we will be shutting down the old message broker in about a week.

In other news, the latest two minor releases of FarmBotOS (5.0.5 and 5.0.6) have included other small improvements, including a fix for the double image upload bug. Thanks @Ascend for reporting that issue on GitHub.

October 20, 2017 Software Update

We updated my.farmbot.io today with the following new features and fixes:

App:

  • Show features that are not available when FarmBot is offline behind an overlay instead of hiding them.

  • Added an App Settings Menu (on the Account Settings page).
    Options include:

    • Enable Web App internationalization option (moved from account menu)
    • Confirm Sequence step deletion option (Thanks to creimers for the feature request.)
    • Hide Webcam widget option
    • Dynamic map size option (based on device axis length)
    • Double default map dimensions option
    • Display plant animations option

  • Added scrollbars.
  • Login stability improvements.
  • Misc. bug fixes.
  • Require email address verification when the account email is changed.

Device:

  • Added the Connectivity widget to help debug connection issues.
    Includes:

    • Status messages
    • Diagram
    • Diagnosis

  • Added selection of firmware board type to re-flash firmware from web app.
  • Added buttons to expand and collapse all hardware settings.

Sequences and Regimens:

  • Added an empty state graphic.
  • Swapped the left and right panels to improve workflow.
  • Scroll content of panels only, not the headers.
  • Improved experience for small screens.

Farm Designer:

  • Visual improvements and bug fixes.
  • Keep search field visible when scrolling through plants and crops.

Controls:

  • Added a Take Photo button to the Move widget. (Inspired by a custom UI from the Taiwanese FarmBot User Group)

Farmware:

  • Improved color picker visual indicator for hue.
  • Removed overlays on Camera Calibration and Weed Detector widgets. (Documentation)
  • Fixed Photo widget metadata display bugs.

Today’s software release does not include an update to FarmBotOS.

Brainstorming Innovative Open-Source Approaches to Food Production with NASA

In July of 2017, the FarmBot core team and other open-source food groups were invited to the NASA Kennedy Space Center in Florida to participate in a 2-day event to brainstorm innovative open-source approaches to food production. Watch the video below to see how FarmBot technology and our community of open-source contributors from around the world are helping humanity to one day grow food in deep space, on the Moon, and Mars.

Get Involved

Interested in becoming a part of our community? We have a limited number of v1.3 FarmBot kits remaining, get one before they’re gone! Order here.

Film produced by metaframe.io

v1.3 Documentation Now Available

Today we published v1.3 of the FarmBot Genesis documentation. This release includes our most comprehensive step-by-step assembly instructions yet, a full bill of materials including tech specs of every part, the complete native CAD model, and more. With our high quality documentation, assembling a FarmBot kit is straightforward and easy.

Additionally, these docs empower makers, students, and world-renowned scientists and engineers all over the globe with the ideas and information needed to help further improve and adapt FarmBot technology for everyone. This is our commitment to open-source in action. We hope you enjoy browsing and using the documentation as much as we do.

Want to get a v1.3 FarmBot?

Over the last week we shipped out almost all of the pre-ordered v1.3 kits. Now we have a limited number of these kits remaining, get one before they’re gone!

September 22, 2017 Software Update

We updated my.farmbot.io and FarmBot OS today with the following new features and fixes:

General:

  • Add X and Y axis jog button controls pop-up to relevant pages of the app.
  • Change toast message location from upper right to lower center of the page.
  • Increase length of message text displayed in ticker.
  • Change app loading animation.
  • Misc style updates.
  • Misc bug fixes.

Farm Designer:

  • Add a garden bed background around the garden map grid.
  • Add annotations to the grid lines.
  • Add a click-to-add planting mode. Find a crop and click ADD TO MAP to activate the mode.
  • Add ability to select multiple plants in order to delete multiple plants more efficiently. Available by clicking DELETE MULTIPLE while editing a plant. (Thanks to Klimbim for the feature request.)
  • Add plant spread overlap indicators while dragging (editing) plants in the map. The color of the adjacent plant spread circles indicate the degree that the dragged plant’s spread is overlapping them.
  • Improve plant dragging at grid edges.
  • Add special styling to seed bins and trays.
  • Show the selected plant icon and indicators on top of other plants.
  • Add a link to the tools page for tools in the map.
  • Fix OpenFarm search bug.
  • Add animations to plants on plant and hover.
  • Add ability to deselect a plant by clicking the map background.

Controls:

  • Add ability to add and view multiple webcam feeds. (Thanks to odranreb for the feature request.)
  • Add ability to name webcam feeds.

Device:

  • Add firmware hardware information display.

Sequences:

  • Change pin write step value to an ON/OFF dropdown for pin value when in digital mode.

FarmBot OS:

  • Add selector for firmware hardware to Configurator.
  • Fix an OS update bug.
  • Fix an image upload bug.
  • Fix a farmware download bug.

August 24, 2017 Software Update

Hi all,

We deployed some new code to my.farmbot.io this morning with the following new features and fixes:

  • Refactored the SAVE buttons throughout the app so that they are more robust
  • Improved the automatic redirection logic for logged-in vs logged-out users
  • Improved toast notification messages for when the web app loses connectivity
  • Bug fix related to scheduling regimens
  • Style improvements to the webcam URL input
  • Bug fixes to the controlled inputs on the login page
  • Added a Chinese translation file submitted by @hx244808 (this was actually deployed on Monday)
  • Bug fix related to the date field when creating a farm event
  • Bug fix related to device naming
  • Updated dependencies
  • Added unit tests all around

Behind the scenes Connor and Rick have been working on our switch to the RabbitMQ message broker. Please note that not all work is done on the master branches of the upstream repositories.

Today’s software release does not include an update to FarmBotOS.

August 10, 2017 Software Update

Hi all,

Since the big v5.0.0 announcement a few days ago we’ve gotten a few fixes and features out the door:

  • There was a bug with sub-sequence execution, when the parent sequence simply stopped when it got to an Execute command. This has been resolved in OS 5.0.1
  • If you had already upgraded to OS 5.0.0 and are now upgrading to OS 5.0.1, you’ll see the progress indicator on the update button in the web app. Sometimes it will display as amount of data downloaded and sometimes as a percentage (depending on the GitHub server that it is being downloaded from)
  • Because the frontend and backend repositories were separated until v5.0.0, we had caching issues and problems with the app loading on iOS devices. Those issues have now been resolved
  • The jog buttons now become disabled and greyed out when FarmBot is busy doing a movement
  • The homepage styling has been updated to match the farmbot.io homepage :sunglasses:
  • Clear labels have been added to the dropdown menus for Pin Mode on the Write and Read Pin Commands

v5.0.0 Software Update

Hi FarmBot Community,

Today we released a version 5.0.0 of the FarmBot software stack! We focused the last six weeks of development on stability, under-the-hood changes, and a grab bag of new features that make using the web app quicker. Here we go:

Web App

The largest changes to the web app are ones most people will not see. Before, we had two code repositories – one for the frontend, and one for the backend API. We originally chose this architecture because we felt it would make casual open-source contributions easier and less intimidating. However, having two repositories for the single app has only confused people, made development/self-hosting setups more difficult to get running, and hindered our abilities to develop a real-time messaging API and continuous integration toolchain. The two codebases have now been merged into a single repository named FarmBot-Web-App.

Merging the repositories has allowed us to better use code testing tools. You will now see in the repository README a few badges for the code coverage. While the coverage is still low, Gabriel, Rick, and Chris have been writing tons of tests that will allow us to ensure we don’t introduce bugs or regressions into the software. If you are “watching” the repository, you will see automated emails after every pull request showing how the coverage is improving with the new code.

Because of the above two changes, we have also been able to set up a continuous integration toolchain. This means that every time a pull request with new code is submitted, our continuous integration server “tries it out” and runs all of the tests. If it passes all the tests, we know that the code can be safely merged. The continuous integration server makes testing faster and more consistent, allowing us to begin deploying to production with smaller updates more often.

Ok, now for some things that you can actually see:

The form for creating Farm Events has been streamlined. Now by default, events will not be repeating events. If you want to make a repeating event, you can click the checkbox and then add the repeat details. Note that we don’t currently support repeating regimen events – only repeating sequence events.

Search-filterable dropdown menu for selecting a Sequence or Regimen for a Farm Event:

Regimen items are now displayed in the calendar along with the parent regimen event.

The controls widget now shows the current motor positions in addition to providing the absolute movement input fields. There are also some extra toggle switches located in the advanced menu for viewing raw and scaled encoder positions which might help some people (especially DIY builders) debug their encoders and settings. (Thanks @klimbim for the suggestion)

Search-filterable Sequences and Regimens Lists allow you to quickly find and select one for editing.

We added search-filterable dropdown menus for selecting a Sequence in an Execute command.

And for importing coordinates into the Move Absolute command.

There are new buttons for selecting/deselecting all of the available days when adding a Sequence to a Regimen.

The Farm Designer now uses Spread values from OpenFarm (how big a plant is expected to grow) when rendering the filled-in green circle on the map, allowing you to better plan out your garden layout.

Hotkeys for syncing, navigating pages, and adding plants and events. See the hotkeys menu by pressing ctrl + shift + /

We implemented a “Last Seen” feature in the Device Widget so you can see when FarmBot last connected to the cloud server.

  • The URL of the web browser now changes when navigating between sequences and regimens. This allows you to use the browser back and forward buttons for faster navigation, and refreshing brings you back to where you were.
  • The Sequence or Regimen being currently edited is now highlighted in the list.
  • Better empty-state formatting and messages on the Sequences and Regimens pages.
  • The date has been added to all status ticker messages.
  • The main navigation is sticky, so it always stays visible on the screen. Thanks @creimers for the suggestion)

Arduino Firmware

The latest Arduino Firmware that is bundled with FarmBot OS v5.0.0 has many improvements:

  • Rotary encoders are now read more quickly. Technically speaking, Tim has moved the stepper movement code out of the interrupt and into the main loop function. This allows interrupts to run faster because the interrupt is now only responsible for reading the encoders. Please note that this has come at a very slight cost to the smoothness of movements. We will continue to improve the firmware and push the Arduino to its limits to try and get both movements and encoder readings as fast and reliable as possible.
  • The new firmware echoes all commands sent from the Rasberry Pi which makes communication between the two much more reliable. This addresses issues related to skipped Sequence steps.
  • When the bot is e-stopped then it will enter into a “safe state” where it turns off all peripherals and stops the motors. An additional toggle switch in the Motors category in the Hardware widget allows for “E-stop on movement errors”, which will also send the bot into a safe state when a movement fails to complete after its max number of retry attempts. The user will need to unlock the device from the web app to have it resume work in either situation. This feature will prevent flooding the garden when an e-stop happens while watering.
  • The movement retry feature has been moved from the OS into the firmware.
  • Unlocking the device from an e-stop no longer requires a reboot, so unlocks happen much more quickly.

FarmBot OS

Most of the changes to FarmBot OS were to support the new features and changes in the other codebases. We did however:

  • Lay more groundwork for the farmware plugin system, which is what the weed detection system uses.
  • Add download progress messages so you can see that FarmBot is downloading an update or farmware plugin. Note that you won’t actually see these messages until the next release is downloaded.

Up Next

  • Switching to a RabbitMQ message broker – this will solve issues where FarmBots or web browsers behind a school or company firewall are blocked from using the current MQTT ports (which prevents communications). This will also allow us to add real-time messaging abilities to the web app (think: better reliablility, faster log syncing to backend, etc)
  • We plan to have all regimen events start at midnight, because it doesn’t make much sense to start a regimen part-way through a day.
  • We plan to allow you to back-schedule regimens, so you could for example transplant a three-week-old-plant into your FarmBot, back-schedule a regimen for taking care of the plant from seed, and then the first three weeks worth of items in the regimen would be skipped.
  • Calendar filters that allow you to more easily find events
  • A jump-to-today button on the calendar in case you scroll really far and want to get back to today
  • Some network status indicators in the Device widget and toast notifications for the app. These will help you debug connectivity issues, especially in cases where FarmBot or your web browser are behind a school or company firewall that is blocking access to the MQTT message broker.
  • Deploying weed detection farmware.
  • An ability to click-to-add plants in the farm designer so that the experience is more compatible with touchscreens and eye-tracking software (for people with disabilities), and so adding many plants at once is much faster.

While many of the features in this release make working with the app and bot faster and easier, we’re still working on addressing the tediousness discussed in the last software update. Now that we have the technical infrastructure in place for smaller updates that are more frequent, we hope to move towards weekly production pushes and more regular update posts. Stay tuned!

Using FarmBot as an Accessibility Technology

Thrive Upstate is a non-profit in Greenville, South Carolina that provides people with disabilities and special needs with meaningful services, opportunities, and support, so they may thrive in life, work and play. See how they are using FarmBot as an accessibility technology for horticultural therapy and to empower individuals who might not otherwise be able to grow their own food.

FarmBot Genesis v1.3 Update

Hey FarmBot community! Over the past few months we’ve had our heads down working on the next batch of 250 FarmBot Genesis v1.3 kits. There’s a long list of improvements we’ve made since v1.2, and here are the two biggest:

Farmduino

Our new open-source custom electronics board designed specifically for FarmBot. This board combines the functionality of RAMPS and the Arduino Mega into one board with great connectors, easy to read silkscreened labels, and a few other bells and whistles. With Farmduino, wiring up FarmBot will be much faster and less error prone.

Injection Molded Parts

In v1.3, more parts are being injection molded out of a UV stabilized ABS material. Many of these new components are lighter, stronger, and/or less expensive than the ones made in the v1.2 kits, which is what allowed us to lower the cost of the v1.3 kits.

In other news: help save the bees!

Our friends over at Open Source Beehives have created an advanced beehive sensor that could help us discover what is killing the bees, open-source style!

They just hit their $20k Kickstarter goal and are pushing to get a BuzzBox in every State in the USA. You can support their efforts by adopting a BuzzBox in your State, purchasing one for your beehive, or checking out their other awesome perks: See the campaign.

v4.0.0 Software Update

Hi FarmBot community,

I’m happy to share that we just released v4.0.0 of FarmBot OS and deployed the last 2 month’s worth of web app progress to my.farmbot.io! Here is an overview of what’s new:

Import Plant Coordinates into Move Absolute Commands

Move Absolute commands in the sequence builder can now import coordinates from any Plant in the Farm Designer. This allows you to graphically design your garden layout and then use Sequences to perform operations according to the plant locations. For example: You can make a sequence that moves to a plant location and then waters the plant.

Note that all plants currently have a z-coordinate of 0 so you will most likely need to use the z-offset functionality in combination with the imported plant coordinates. On our roadmap is the ability to define the z-height of your soil plane. Then, all imported plant coordinates will have a default z-coordinate according to the soil height and planting depth.

Find Home in Sequences

As requested, we added a FIND HOME command to the Sequence Builder. This allows your FarmBot to programatically find the home (minimum) position and set that position as (0, 0, 0) whenever you want. We recommend as a best practice to not only MOVE ABSOLUTE to (0, 0, 0) at the end of your sequences, but then also FIND HOME to ensure locational accuracy. You might also want to FIND HOME at the beginning of tool mounting sequences. You can choose to find home for a single or all three axes.

Send Email Messages

SEND MESSAGE commands can now be configured to send you an email in addition to the status ticker and toast notification options.

The Farm Designer

You can now choose the origin of the Farm Designer map to match up its display with how you have configured your FarmBot. There are four options – one for each corner. In the image below, the bottom left corner is chosen as the origin. Coming soon will be the ability to rotate the map 90 degrees so that all possible configurations are covered.

Spread is the expected maximum size that a plant will grow. It is displayed in the farm designer as a filled-in semi transparent green circle behind each plant icon. It is shown when you click an icon, or shown for all plants when the layer is turned on from the right-side menu. Spread is useful for efficiently using the space in your garden without overcrowding any plants. Spread data will soon come from OpenFarm, though right now we are just using a default value for all crops.

The new FarmBot layer shows the locations of the tool slots as semi transparent gray circles. The name of the tool in that slot is shown upon mouseover. This layer also displays the real-time location of the FarmBot gantry and cross-slide/z-axis as a darker gray bar and circle (shown at the home position (0, 0, 0) in the image below).

Other bug fixes and improvements

  • Status ticker times are now displayed correctly
  • Dragging and dropping now works at all map zoom levels and scroll locations
  • All Arduino Pins are now available for evaluation as the variable in an IF statement
  • You can now also choose “is unknown” from the operator dropdown in an IF statement
  • Camera widget displays properly when no webcam stream is present
  • Crop image aspect ratios are now correct
  • New Invert Jog Button Toggles located in the gear menu on the Controls widget allow you to match the jog buttons to your real-life perspective when manually controlling FarmBot. Coming soon: an additional toggle to swap the X and Y jog buttons to cover all possible perspectives.
  • To reliably execute Farm Events, your FarmBot needs to know its timezone. We will guess your FarmBot’s timezone and set it for you based on your web browser’s location, though if you manage your FarmBot remotely (from a different timezone) then you should double check our guesswork by going to the Device page and finding the TIMEZONE dropdown.
  • New organization of the device parameters

New Arduino Firmware

We have further improved the rotary encoder support. We recommend these new parameter values for the rotary encoders and motors:

  • Max Speed (Steps/s): 400
  • Enable Encoders: Yes
  • Encoder Scaling: 56
  • Max Missed Steps: 5
  • Encoder Missed Step Decay: 3

While the encoders are currently best used for stall detection, we are working on the ability to use them for positioning as well. You can try the experimental support for this with the new toggle switches for “Use Encoders for Positioning”. Note this will not work reliably above 400 steps/s.

The new firmware also supports software limits (STOP AT HOME and STOP AT MAX) that will restrict movements from going beyond the maximum or minimum locations. We recommend enabling these from the Device page of the web app.

AXIS LENGTH values are now automatically set during calibration. You can also manually set the values from the device page, though they will be overwritten with every calibration.

FarmBot OS v4.0.0

The ability to import plant coordinates required a significant refactor to how plant, weed, and tool locations are defined across the entire software stack. FarmBot OS v4.0.0 is a required upgrade to be able to use the new web app features. In addition to the new importable coordinates functionality, the new OS also includes:

  • Better WiFi stability that resolves the :nxdomain issues
  • Improvements to rebooting and factory resetting
  • The new Arduino firmware

To upgrade to the new OS, simply go to the Device page and press the green UPDATE button. Note that the download and upgrade might take a while and your FarmBot may reboot a few times.

Addressing Tediousness

We understand that programming your FarmBot to take care of an entire garden is still a tedious process that requires many duplicate sequences and regimens rather than generic reusable ones. For example: each tool requires its own “pickup” sequence. And each plant requires its own “water” sequence or move absolute steps. We have a lot of ideas and features on our roadmap for how to make these things less tedious:

  • Move Absolute commands that can inherit coordinates from a parent sequence, regimen, or farm event – Currently you can manually define move absolute coordinates or import them from a tool, plant, etc. In either case, the coordinates are resolved in the sequence step. Inheriting coordinates will allow the coordinates to be resolved in the sequence itself, in a parent regimen, or in a parent farm event. This will allow sequence steps to be more generic, and only become fully defined as part of the entire sequence or when that sequence is scheduled in a farm event or used in a regimen.
  • Plant groups – Allows you to define groups of plants. There will also be some auto-generated groups for all-plants, and plants of a certain crop. This allows:
  • Looping a sequence over a group of plants or weeds – This will allow you to make one watering sequence, for example, that can be run for all of your plants.
  • Applying Regimens to a Plant or Plant Group – Currently you can schedule regimens to run on their own, and they might interact with your plants. However, the grand vision is to be able to apply a regimen to a plant, or group of plants. This will allow you to re-use all the sequences and steps needed to take care of a crop, season after season.

What Else is Next

Our next big pushes include the notes mentioned above, as well as:

  • Improving the communication between the Arduino and the Raspberry Pi by implementing a stricter messaging specification. This will help resolve some of the issues we’ve seen with “combined movements”, unexpected e-stop unlocking results, and other anomalies.
  • Displaying all Regimen Items in the Farm Events calendar
  • Implementing a “Safe State” feature so FarmBot knows what to do (and what not to do) during an E-Stop or when the encoders detect a motor stall.
  • Implementing a “Retry Movement” feature so that FarmBot can attempt to move again after a stall. If the max number of retries limit is reached, the device will likely be e-stopped and you will be notified via email. Note that this concept is still in the works and subject to change.
  • Deploying alpha weed detection farmware.
  • And of course: stability improvements and bug fixes throughout the stack.

We appreciate everyone’s support in providing us with software feedback, reporting bugs, and troubleshooting. We also appreciate everyone’s patience as we develop these new features. We understand that this release took a while since the last big one, and we’re working to speed up the time in between releases so that you can get new features and fixes faster. We look forward to hearing what you think!

FarmBot Stories: The Sudweeks Family

Garrett and Lexie Sudweeks are first generation FarmBot builders in Cedar City, Utah in the United States. Watch them put together their v1.2 FarmBot Genesis kit and hear what it means to them to grow their own food and be a part of the larger open-source FarmBot community.

FarmBot Genesis v1.2 Videos

We just uploaded nearly 30 new videos to our Youtube channel that discuss our v1.2 FarmBot kits. In this series you can see a complete unboxing as well as closeups and detailed descriptions of every part in the kit. Check it out: