[protofusion] http://protofusion.org/wordpress Open Hardware and Software Tue, 26 Feb 2019 01:46:47 +0000 en-US hourly 1 https://wordpress.org/?v=5.6.13 11753368 Gaggia Classic Seamless PID Upgrade http://protofusion.org/wordpress/2019/02/gaggia-classic-seamless-pid-upgrade/ http://protofusion.org/wordpress/2019/02/gaggia-classic-seamless-pid-upgrade/#comments Tue, 26 Feb 2019 01:46:38 +0000 http://protofusion.org/wordpress/?p=3003 ]]>

The ability to make good espresso is one of the most coveted skills in the coffee world. The rich body and complex flavor profile of a well-made shot brings the beans to life with a depth that other brewing methods fail to achieve. But espresso is also among the more complicated ways to make coffee. Fine grinds, high pressures, short brew times, metered doses, and precise temperatures all work together to create the perfect shot – but a variation in any one of these variables can just as easily render it undrinkable. Making consistently good espresso requires consistent brewing parameters.

Unfortunately, traditional consumer-grade espresso machines are not very good at keeping water temperature consistent. They typically manage the boiler temperature with thermal cutoff switches, which have a large temperature range, switching off the heater when the temperature reaches the top of the range, and switching back on when it gets to the bottom of the range. This can result in temperature swing of 10°C or more, but espresso requires a precision of at least 1°C for reliable results. Because of this, many home baristas will learn to “temperature surf” by measuring the boiler temperature at various points in the heating cycle and tracking the time after the thermal cutoff switch turns off to hit their desired brew temperature. This technique is very tedious to execute correctly and is subject to variations in individual machines and environmental conditions.

The best way to keep the boiler temperature consistent is by implementing a PID control algorithm, which is designed to optimally regulate temperature and can easily achieve sub-degree accuracy. There are many commercial PID controllers available on the market, but they each have drawbacks such as size, cost, and customizability. To overcome these hurdles and create a solution that meets our temperature control needs, Protofusion has developed a tiny open-source PID controller called Therm.

Therm uses a thermocouple to measure temperature and has a digital output that can be paired with a solid state relay (SSR) to control heating elements or other thermal devices. Because the software is open source, it is easy to add new parameters, control strategies, and features. For this project, we will use Therm to control the boiler temperature of the Gaggia Classic espresso machine and configure the software to read in the state of the switches on the front of the machine to select between brew and steam temperatures. This seamless integration will preserve the existing machine interface and aesthetic while providing the benefits of precise and stable PID-controlled boiler temperatures.

Start to finish, it took me about 2 hours to complete this project. I would imagine the whole thing could be achieved in an afternoon by anyone comfortable around tools and with basic soldering experience.

Schematics

Stock Wiring Diagram (Source: Gaggia Users Group)

Above is the schematic and wiring diagram for an unmodified Gaggia Classic machine. This is the starting point for the modifications we’ll make, and we’ll try to leave as much of the system as possible undisturbed. In fact, if you follow the directions here, it should be very easy to revert the machine back to the stock configuration.

The first addition to the system is a Therm module to act as the new brains of the machine. Therm runs on a 5V power supply, which doesn’t exist in the stock machine, so we’ll need to add that too. To measure the temperature of the boiler, we’ll need to add a thermocouple. We also want to remove the old thermal cutoff switch that was used to control the brew temperature. Physically removing the cutoff switch is not strictly required, but it leaves a nice place to install the thermocouple, so I would recommend it. Either way, we’ll want to take it out of the circuit and replace it with a solid state relay. The SSR will turn on and off to regulate the temperature just like the cutoff switch did, but it will be controlled by Therm rather than a mechanical thermal mechanism.

Next, we need a way to tell Therm whether the machine is in brew mode or steam mode, so it can set the temperature setpoint accordingly. In the stock machine, the steam selector switch on the front panel is used to bypass the brew cutoff switch, which will allow the temperature to go up to the limit imposed by the steam cutoff switch. But now, we want Therm to control the temperatures and not the cutoff switches. To do that, we’ll disconnect the steam selector switch from the cutoff switch, and instead, connect it to an input on Therm.

I decided to leave in the steam cutoff switch because it will help protect the boiler from getting too hot. The machine also has a thermal fuse that will trigger if everything else fails, but since it is a single-use fuse, I didn’t want to risk blowing it while I was tuning my Therm settings. I did, however, decide to upgrade my steam cutoff switch with a 155°C replacement, which should help the machine deliver a larger volume of steam from the boiler compared to the stock 145°C cutoff. This upgrade is completely optional as it doesn’t directly influence the PID control system, but it may be worth considering since you already have the machine open.

Below is an updated schematic which shows all of the changes we want to make to the system. Next, we’ll look at the specific parts we’ll need and then go through each step required to complete the modification.

Updated schematic showing modification details

Parts List

Therm: Therm is a open source PID temperature controller created by Protofusion. Unfortunately, it is not currently available for sale, but since it’s completely open source, you’re welcome to download the design files and fabricate one yourself!

Solid State Relay: SSRs can be cheaply sourced from places like eBay, but be careful not to skimp on this part. The Gaggia Classic has a max power consumption of more than 1400W, which can easily burn up a cheap SSR. If the brand or source is questionable, I would recommend derating the current by a factor of 2 or 3 and going for a model rated for 25-40A just to be safe.

Thermocouple: Thermocouples are used to precisely measure temperature. They come in all shapes and sizes for many different applications and can have a wide range of price points. Fortunately, several popular low-cost 3D printers use a thermocouple with an M4 thread that perfectly matches the thread of the thermal cutoff switch we are removing, making it easy to find and a perfect drop in replacement for this modification.

Power Supply: The Therm PID temperature controller needs a 5V power supply, but the only power available in the stock machine is 120V AC. Just about any AC to 5V power supply will work, since Therm doesn’t consume much power, but I chose this MeanWell module for its low cost, small form factor, and easy connection points. A basic USB phone charger would also work well if you have an old one laying around.

High Temp Wire: Wire rated for high temperatures is a good idea for this modification because the inside of an espresso machine can get hot enough to melt standard wire insulation. I chose wire with silicone insulation and a 200°C rating. You’ll need some relatively heavy gauge wire for wiring the heaters, but the signal wires for the SSR control and steam selection switch can be much smaller. I used 16 gauge wire for the high power lines and 22 gauge wire in red, blue, and black for the low power circuits.

Spade Connectors: Spade-style quick connect terminals are used in the stock espresso machine wiring, and it’s nice to be able to plug the new circuit additions directly into the existing harness connectors. This isn’t strictly required, and there are plenty of other ways to create electrical connections, including splices, solder joints, and different connector styles.

Thermal Paste: Thermal paste is used to improve heat transfer. In this case, we want temperature changes in the boiler to influence the thermocouple as quickly as possible. While not absolutely necessary, a dab of thermal paste will help to improve the accuracy and response time of the temperature measurements. (Any old thermal paste will work well – Arctic Silver is definitely overkill, but it’s what I had on hand.)

155°C Thermal Cutoff Switch (Optional): The stock machine comes with a 145°C thermal cutoff switch for steam temperature, which restricts the amount of steam that can be made in the small boiler. Upgrading to a 155°C cutoff should significantly improve the available steam volume.

Required Tools

  • Screw drivers
  • Adjustable wrench or wrench set
  • Wire cutters
  • Crimpers or pliers
  • Soldering iron

Detailed Steps

Here are more detailed instructions on making the modifications step by step:

  1. Open up the machine: Remove the two screws along the back of the top cover and take off the cover, along with the water funnel.
  2. Remove brew cutoff switch: The brew thermal cutoff switch is located on the side of the boiler, opposite the steam knob. It’s threaded into a mounting hole and you might see some some white/gray thermal paste coming out around the edges. Disconnect the spade connectors plugged into it, and use a wrench to back it out.
  3. Install thermocouple: The thermocouple in the parts list has an M4 thread to match the cutoff switch thread, so installing the thermocouple is as easy as screwing it into the open hole. A bit of thermal paste on the tip before installing is recommended, but not required, especially if there’s lots of thermal paste left from old switch.
  4. Replace steam cutoff switch (optional): If you opted to upgrade the steam thermal cutoff switch, you can swap that out now. The steam cutoff is found on the top of the boiler, and looks just like the brew switch. Make sure you reconnect the wires once the new device is installed.
  5. Disconnect steam switch on front panel: The steam switch is double pole, which means it has two separate circuits running through it. We only want to disconnect the side that goes to the heater coil, which is the side closer to the brew switch. Disconnect both the top and bottom connectors. In my machine, the top connector had two gray wires and the bottom one had a single blue wire.
  6. Wire up and connect SSR: Use the heavy gauge wire to add leads to the SSR output side and terminate them with male spade connectors. Since the SSR takes the place of the front panel steam switch in this circuit, we’ll want to connect the output directly to the wires we just unplugged from the front switch. Plug the male spades into the female connectors from the front panel switch. Add wires (thinner wire is fine) to the SSR +/- input to connect to Therm.
  7. Wire up power supply: The 5V power supply needs to connect to the AC power coming into the machine, preferably after the power switch. For the AC hot connection, I used the connectors that were unplugged from the brew thermal cutoff switch (on mine, the hot side had a single gray wire). For the neutral connection, I spliced a wire with a connector into the neutral line going out to the power plug. Wire up the power supply and connect the AC hot/neutral to the machine, leaving 5V wires ready to connect to Therm.
  8. Wire up and install Therm: Use female spade connectors and the thinner wire to connect the front panel steam selection switch to the Therm aux pins. Also connect the thermocouple, SSR input, and 5V lines to the matching Therm ports. I used ferrules to terminate the wires going to the Therm screw terminals, but bare wires would also work just fine.
  9. Reassemble the machine: Double check that all of the wires are hooked up, and then replace the top cover and the water funnel, along with the screws that were removed during disassembly.

Conclusion

You’ll be amazed at how consistent the Gaggia Classic can be in creating repeatable shots when the boiler temperature is stable. PID temperature control allows you to focus on the art of pulling a good shot, instead of constantly worrying about fluctuating brew temperatures.

]]>
http://protofusion.org/wordpress/2019/02/gaggia-classic-seamless-pid-upgrade/feed/ 26 3003
New Product: CANable Pro – Isolated USB to CAN Adapter http://protofusion.org/wordpress/2018/11/new-product-canable-pro-isolated-usb-to-can-adapter/ http://protofusion.org/wordpress/2018/11/new-product-canable-pro-isolated-usb-to-can-adapter/#respond Thu, 29 Nov 2018 18:19:08 +0000 http://protofusion.org/wordpress/?p=2975 ]]> CANable Pro Isolated USB to CAN Adapter

The CANable Pro is a low-cost fully isolated USB to CAN adapter. Connect to any CAN2.0A/B network without worrying about common mode offset, ground noise, or damaging your computer! The CANable Pro is open-source hardware that is manufactured in the USA.

The CANable Pro provides the same serial-line CAN interface on Windows, Linux, and Mac as the original CANable but also features breakaway mounting holes, enhanced ESD protection on both CAN and USB, and full galvanic isolation.

Just like the original CANable, the CANable Pro supports the alternative candlelight firmware which enumerates as a native CAN interface on Linux for ease of integration into embedded systems and works with the cangaroo software on Windows and Linux for easy viewing and transmitting of CAN packets.

CANable Pro is now in stock at the Protofusion Labs store

Features

  • Supports CAN2.0A and B, baud rates up to 1M
  • Full galvanic isolation
  • Breakaway mounting points
  • Additional ESD/transient protection on CAN and USB interfaces
  • Serial-line can (slcan) interface for Mac, Windows, and Linux
  • Native Linux and enhanced Windows support with candlelight firmware
  • 3-pin screw terminal with CANH, CANL, and GND
  • Button for entering the bootloader
  • Jumper to enable/disable termination
  • Made in the USA!
]]>
http://protofusion.org/wordpress/2018/11/new-product-canable-pro-isolated-usb-to-can-adapter/feed/ 0 2975
HydroBot: Deep Water Culture http://protofusion.org/wordpress/2017/12/hydrobot-deep-water-culture/ http://protofusion.org/wordpress/2017/12/hydrobot-deep-water-culture/#respond Sun, 31 Dec 2017 22:46:35 +0000 http://protofusion.org/wordpress/?p=2642 ]]>

Deep Water Culture (DWC) is a hydroponic gardening method in which plants are grown directly into a large pool of nutrient solution. Typically, plants are placed in net baskets full of a growing medium such as perilite or expanded clay pellets. These baskets are then placed in a reservoir (5 gallon hardware store buckets are a popular choice among hobbyists) to submerge the plant roots. The root mass will continue to grow down into the reservoir, slowly filling it with loosely packed roots. DWC systems require a well oxygenated nutrient solution to keep the roots from drowning and rotting – an air stone and a bubbler are often used to sustain adequate dissolved oxygen levels. As plants consume water, the reservoir level will recede, exposing the roots to even more oxygen and promoting prolific growth. The downside of frequently changing water levels is that pH and EC levels tend to fluctuate, especially in smaller systems. Maintaining a large number of small reservoirs, such as 5 gallon buckets, can also become tedious. To combat this, recirculating designs are implemented to tie together smaller reservoirs into one large system, which will tend to be much more stable and require less work.

5 Gallon DWC Bucket

The benefits of deep water culture comes from the simple design with few moving parts – a bucket and an air stone are the only real requirements. This simplicity makes it a very accessible growing technique for beginners or budget growers. Additionally, the high levels of oxygen exposure experienced by the roots encourages robust plant growth and provides optimal growing conditions for many types of plants – especially fruiting plants such as tomatoes and peppers. This type of system is also very fault-tolerant, since a power outage or equipment failure won’t prevent plants from receiving the water they need.

Deep Water Culture system using Hydrobot

HydroBot modules can be used to monitor and control a deep water culture hydroponic system:

  • AirSense monitors air temperature, humidity, and pressure, and ambient light level, to track changes in the environmental growing conditions.
  • RelayDrive controls lights, bubblers, fans, and heaters to regulate growing cycles.
  • WaterSense monitors water level and temperature to maintain the water reservoir.
  • The Master Control computer manages communication, scheduling, and logging to the database.

DWC style hydroponic growing is a simple, low-cost way to grow a wide variety of plants. No matter what type of plant you grow, HydroBot’s modular and flexible design can be easily adapted and scaled to meet your needs.

HydroBot is an open-source hardware and software project. All source can be found in the HydroBot repository, and more posts about the project can be found here on the Protofusion Blog.

Original artwork by Kayla Curtis.

]]>
http://protofusion.org/wordpress/2017/12/hydrobot-deep-water-culture/feed/ 0 2642
HydroBot: Nutrient Film Technique http://protofusion.org/wordpress/2017/10/hydrobot-nutrient-film-technique/ http://protofusion.org/wordpress/2017/10/hydrobot-nutrient-film-technique/#respond Sat, 07 Oct 2017 22:00:48 +0000 http://protofusion.org/wordpress/?p=2636 ]]>

Continuous Flow or Nutrient Film Technique (NFT) hydroponic systems use a shallow stream (or film) of water recirculating through a channel to deliver nutrients directly to the plant roots. The stream is shallow enough that the uppermost roots laying in the channel are exposed to air, providing the plant with access to lots of oxygen in addition to all the water it needs. To control the depth of the water stream, NTF systems use channels sloped at 1:30 or 1:40 (around 1.5 degrees). For most plants, the optimal flow rate in each channel is 1-2 L/m, and a maximum length of 10-15 meters is recommended to avoid nutrient depletion at the end of the channel. Because NFT style systems rely on a pump for nutrient and water delivery, there is no protection against power outage or system malfunctions. Plants will quickly die if the pump stops running for more than a few hours. NFT systems are best suited for leafy plants, due to the restricted channels which would not be adequate for the massive root structures necessary for most fruiting plants.

NFT Hydroponic System

NFT systems typically consist of plant-filled channels and a water reservoir with a re-circulation pump. The pump caries water from the reservoir up to the top of the channels, where it runs down past the plant roots and drains back into the reservoir. An artificial light is required if adequate sunlight is not available, and air movement from wind or a fan keeps the plants stimulated. Aeration is also important to keep up the dissolved oxygen content of the water, and can be provided by an air stone and bubbler.

 

NFT system using Hydrobot

HydroBot modules can be used to monitor and control an NFT hydroponic system:

HydroBot RelayDrive module installed in an NFT hydroponic system

  • AirSense monitors air temperature, humidity, and pressure, and ambient light level, to track changes in the environmental growing conditions.
  • RelayDrive monitors water flow rate and controls the light, pump, bubbler, fan, heater, and fill and drain solenoids to regulate growing cycles.
  • WaterSense monitors water level and temperature to maintain the water reservoir.
  • The Master Control computer manages communication, scheduling, and logging to the database.

NFT style hydroponic growing is very effective at producing leafy plants and can easily be scaled down to a small herb garden or up to a large commercial crop of lettuce. No matter what size garden you have, HydroBot’s modular and flexible design can be easily adapted and scaled to meet your needs.

HydroBot is an open-source hardware and software project. All source can be found in the HydroBot repository, and more posts about the project can be found here on the Protofusion Blog.

Original artwork by Kayla Curtis.

]]>
http://protofusion.org/wordpress/2017/10/hydrobot-nutrient-film-technique/feed/ 0 2636
Tracking Balloons with WSPR http://protofusion.org/wordpress/2017/09/tracking-balloons-with-wspr/ http://protofusion.org/wordpress/2017/09/tracking-balloons-with-wspr/#comments Sat, 30 Sep 2017 22:00:39 +0000 http://protofusion.org/wordpress/?p=2777 ]]>

What is WSPR?

WSPR is a low data rate digital protocol intended for measuring RF propagation, typically on LF and HF bands and at very low powers (often 1W to as little as 20mW). WSPR messages are digital packets that contain just a few pieces of data:

  • Callsign of sender
  • 4-digit grid locator for indicating transmitter location
  • Transmit power in dBm

This data allows a listener to know how far away transmissions originated and with how much power the transmission was made, giving a fairly realistic and real-time measurement of RF propagation.

On the physical layer, WSPR consists of a 4FSK modulated signal with a separation of 1.4648Hz between tones. This frequency shift is so small that it is nearly imperceptible to the human ear. Bits are transmitted at 1.4648 baud (which is crazy slow!) and messages take just shy of 2 minutes to transmit, which contributes to the protocol’s robustness.

WSPR includes a few other features that help it decode reliably even at very low SNR. Each WSPR message must be transmitted on an even minute, +/- a couple seconds, so receivers know when to expect the beginning of a message. Each message includes forward error correction (FEC) so that receivers can correct any bit errors that do occur during transmission. Messages are also combined with a 162-bit pseudo-random sequence sync vector to aid in receiver synchronization to the bit stream.

Why use it for balloon tracking?

WSPR provides a great transport for data when balloon tracking, as distances of 1000km+ are easily spanned with merely 20mW of power or less. WSPR receivers are located around the globe, and are continuously listening for WSPR transmissions which they relay to the Internet, providing an easy-to-use backbone for balloon data.

The hardware required to transmit WSPR is also very simple. Most transmitters are very simple, and consist of a single I2C programmable oscillator with a simple low-pass filter. The oscillator is re-programmed to different frequencies on the I2C bus for each bit transmitted. Even though this method is several orders of magnitude too slow for conventional modulation schemes, the extremely slow baud rate of WSPR allows this technique to work very well.

While all this sounds perfect for balloons, there are some practical limitations: you can only transmit very limited data, and transmissions are super slow. Packets only include 4-digit grid locators, which only localizes you down to a 70mi x 100mi square. There is no provision for any additional data such as battery voltage, altitude, temperature, etc.

(mis)Using WSPR fields to encode data

We can work around two of these issues with a slight hack on the WSPR network. WSPR packets that have callsigns with ‘0’ or ‘Q’ are considered invalid packets (since no allocated callsign starts with these characters). However, WSPR receivers still process and upload these packets to WSPRnet, and they can be used for balloon telemetry.

Typically trackers will transmit a “standard” WSPR packet that shows up correctly on the WSPRnet map, followed by an “invalid” ‘0’-packet that encodes some additional telemetry. This packet typically encodes battery voltage, temperature, altitude, and 2 additional characters of maidenhead grid locator into a single WSPR packet.

 

Check back for a follow-up post where I walk through how this data is encoded in my WSPR tracker. All of my code will be open-source and available for reuse!

 

]]>
http://protofusion.org/wordpress/2017/09/tracking-balloons-with-wspr/feed/ 5 2777
HydroBot: Hydroponics Overview http://protofusion.org/wordpress/2017/09/hydrobot-hydroponics-overview/ http://protofusion.org/wordpress/2017/09/hydrobot-hydroponics-overview/#respond Sun, 24 Sep 2017 22:20:19 +0000 http://protofusion.org/wordpress/?p=2716 ]]>

What is Hydroponics?

Hydroponics is a method of growing plants without soil, using mineral nutrient solutions dissolved in water. Plants use light to turn water and carbon dioxide into the food they need, through a process called photosynthesis. As long as the plants have enough access to water, air, and nutrients, dirt is not necessary for plants to grow.

The word hydroponics comes from two Greek words, “hydro” meaning water and “ponics” meaning labor. The concept of soil-less gardening or hydroponics has been around for thousands of years — the Hanging Gardens of Babylon and The Floating Gardens of China are two of the earliest examples of hydroponics. Modern hydroponic systems are based on the same principles as their early predecessors and have been developed extensively in recent years to improve both yield and efficiency, leading many to believe that hydroponics will play an integral role in feeding future generations.

Types of Hydroponic Systems

Hydroponic systems can take many forms, each with advantages and disadvantages, but all with the common goal of delivering water to plant roots. Some systems are geared towards specific types of plants, while others are designed with low cost, large crops, or easy maintenance in mind. These are a few examples of a variety of commonly used hydroponic system designs.

Continuous Flow/NFT

Nutrient Film Technique (NFT) recirculates a shallow stream of water containing nutrients past the bare roots of plants in a channel, covering the roots with a thin film of nutrient water. This keeps the roots moist, while still exposed to air, which provides access to plenty of oxygen.

Deep Water Culture

Deep Water Culture suspends the plant roots in a solution of nutrient-rich, oxygenated water. As the roots grow, the water level can be lowered, exposing some of the roots to air, which increases access to oxygen.

Aeroponics

Aeroponics uses a fine mist of nutrient water to deliver nutrients to the plant roots. Suspending the roots in a mist-filled enclosure gives them simultaneous access to both nutrients and oxygen from the air. To optimize nutrient delivery without blocking oxygen access, the water micro-droplets must be smaller than 50 microns.

Ebb and Flow

Ebb and Flow (or Flood and Drain) systems flood the roots of plants in a growing medium with nutrient water for a short period of time (5-10 minutes) before draining back into a reservoir. This gives the roots the water and nutrients they need, while exposing them to air for the rest of the cycle.

Rotary

Rotary systems use a continually rotating circular frame with plants lining the inside and a light source at the center. Rotations take place as often as once an hour, and the plants receive nutrients once per cycle. Due to their constant struggle against gravity, plants typically mature quicker than more traditional methods.

Aquaponics

Aquaponics is a symbiotic growing technique that combines plants and fish in the same system. Ammonia and other by-products released by the fish are broken down by bacteria into nitrates and nitrites, which are then used by the plants as nutrients.

]]>
http://protofusion.org/wordpress/2017/09/hydrobot-hydroponics-overview/feed/ 0 2716
HydroBot: Prototyping New Modules http://protofusion.org/wordpress/2017/07/hydrobot-prototyping-new-modules/ http://protofusion.org/wordpress/2017/07/hydrobot-prototyping-new-modules/#respond Sat, 22 Jul 2017 23:00:30 +0000 http://protofusion.org/wordpress/?p=2597 ]]>

ProtoModule is a HydroBot module designed to easily develop and test new monitoring or control functions that may someday go into a HydroBot module. It has 11 GPIO pins and the power rails broken out on a 0.1” pin header for easy breadboarding or interfacing with ribbon cables. The provided pins give access to a variety of digital and analog I/O, as well as digital communication peripherals, to allow for many flexible design options.

ProtoModule Features:
  • STM32F0 microcontroller
  • 11 GPIO Pins
  • 0.1″ Pin Header Breakout
  • 3 LEDs to indicate device status
  • 6-30V input works with 12V and 24V systems
  • JST-PA series connectors
  • Parallel bus connections for daisy-chaining
  • Protofusion pogo programming interface
  • Open source design

Since it is intended to be used as a development board, this module has no predefined behavior. The 11 GPIO pins were selected to provide a broad range of functionality and can be used as analog, digital, or frequency inputs, digital, or pwm outputs, SPI, I2C, or UART communication ports, timer/counter channels, and more. This flexibility enables interfacing with a variety of sensors and actuators, which will be useful in testing out new HydroBot features before integrating them into dedicated modules.

All source can be found in the HydroBot repository, including firmware source code and hardware files. The BOM and generated gerber files are also included for easy replication.

]]>
http://protofusion.org/wordpress/2017/07/hydrobot-prototyping-new-modules/feed/ 0 2597
HydroBot: Connecting the Modules http://protofusion.org/wordpress/2017/02/hydrobot-connecting-the-modules/ http://protofusion.org/wordpress/2017/02/hydrobot-connecting-the-modules/#respond Sun, 05 Feb 2017 23:54:37 +0000 http://protofusion.org/wordpress/?p=2595 ]]>

HydroHub is a HydroBot module designed to connect together HydroBot modules in a star topology. The hub provides power and CAN connectivity to a total of eight channels. It has a DC barrel jack for connecting an external power supply, as well as selectable termination for the CAN bus.

HydroHub Features:
  • 8 channels for connecting HydroBot modules
  • 5.5mm DC barrel jack for power input
  • 6-30V input works with 12V and 24V systems
  • Selectable 120Ω CAN bus termination resistor
  • Power indication LED
  • JST-PA series connectors
  • Open source design

JST-PA Series Connectors

This design introduces the switch to JST-PA series connectors for HydroBot modules. These connectors, although somewhat bigger and more expensive than the JST-ZH connectors used previously, will allow for lower gauge wiring and much higher currents than before. The new connectors support 22-28 gauge wiring and up to 3A per pin. All new module designs going forward will use JST-PA connectors and existing modules will be updated as part of the next revision cycle. The first module that has been updated to include the new connectors is the AirSense module, which has also added a light sensing feature. Other HydroHub features to note include a constant current driver for the power indication LED to keep brightness consistent over the entire input voltage range, and a CAN bus termination resistor that can be selected using a simple jumper to accommodate the needs of various network topologies.

All source can be found in the HydroBot repository. The BOM and generated gerber files are also included for easy replication.

]]>
http://protofusion.org/wordpress/2017/02/hydrobot-connecting-the-modules/feed/ 0 2595
HydroBot: Switches and Relays http://protofusion.org/wordpress/2016/09/hydrobot-switches-and-relays/ http://protofusion.org/wordpress/2016/09/hydrobot-switches-and-relays/#respond Wed, 14 Sep 2016 22:00:32 +0000 http://protofusion.org/wordpress/?p=2493 ]]>

RelayDrive is a HydroBot module designed to drive relays and other electro-mechanical devices. It consists of 4 low-side outputs, each rated for 1A continuous current, as well as 4 digital inputs, and is controlled over CAN. This module is intended to drive mechanical relays, solid state relays, and solenoids for controlling devices such as lights, pumps, heaters, fans, and valves in a HydroBot hydroponic system. 

RelayDrive Features:
  • STM32F0 microcontroller
  • 4 low-side 1A outputs
  • 4 opto-isolated digital inputs
  • 3 LEDs to indicate device status
  • 6-30V input works with 12V and 24V systems
  • JST-ZH series connectors
  • Parallel bus connections for daisy-chaining
  • Protofusion pogo programming interface
  • Open source design

Each of the outputs of the RelayDrive module can be controlled as discrete on/off switches, or can be configured as PWM outputs. Each of the inputs can also be independently configured as digital inputs or frequency inputs. Frequency inputs are measured in Hz and can currently read input signals up to 1KHz. The default firmware uses a CAN baud rate of 500K. It sends out status messages on ID 0x204, with digital or frequency input readings, and receives command messages on 0x203 to control outputs and set input and output configuration.
IMG_2503

Because many devices in a hydroponic system run on mains power and require relays for control, I packaged up 4 solid state relays in a 2 gang electrical box. This keeps all the relays together without exposing any hot wires, and the 4 controlled outlets match up nicely with a single RelayDrive module.

All source can be found in the HydroBot repository, including firmware source code and hardware files. The BOM and generated gerber files are also included for easy replication.

]]>
http://protofusion.org/wordpress/2016/09/hydrobot-switches-and-relays/feed/ 0 2493
The CANable USB to CAN adapter is now cheaper and back in stock! http://protofusion.org/wordpress/2016/08/the-canable-usb-to-can-adapter-is-now-cheaper-and-back-in-stock/ http://protofusion.org/wordpress/2016/08/the-canable-usb-to-can-adapter-is-now-cheaper-and-back-in-stock/#comments Fri, 05 Aug 2016 20:46:55 +0000 http://protofusion.org/wordpress/?p=2523 ]]> CANable Open-Source USB to CANbus adapter

The CANable open-hardware USB to CAN adapter is now back in stock! You can order directly from the Protofusion Tindie store. I dropped the price to $25, making the CANable an even more affordable way to interface with the CANbus. Check out canable.io for more information.

]]>
http://protofusion.org/wordpress/2016/08/the-canable-usb-to-can-adapter-is-now-cheaper-and-back-in-stock/feed/ 3 2523