Forum Replies Created
-
AuthorPosts
-
RayKeymasteryou are forgetting that there is a forward drop voltage from the gate to mt1 terminal which is usually about 1.5v to 2v. this is similar to the transistor’s gate to emitter voltage.
RayKeymasterHi, I am on vacation this week and I will give you some quick troubleshooting suggestions to hopefully help you figure out the issue.
First, from the pictures, I couldn’t tell if the three pins of the power switch are soldered reliably. It looks like there isn’t much solder on those pins. So try to resolder these.
Seccond, if the voltages are wrong when the controller is powered by USB, that most likely means a shorting somewhere. You should measure the resistance between VIN and GND, also VCC and GND. They should be at least on kilo-ohm level. I won’t be surprised that yours shows only a few ohms.
The exact cause for shoring could be complicated. But I suggest that you first take off MC34063, measure the resistances again, and then if there is still shorting, desolder (or simply clip off) MCP1702-33 linear regulator. Let me know your discovery after following these steps.
RayKeymasterFirst of all, I assume your ospi.py is copied to /var/www/opensprinkler folder, otherwise it obviously won’t find the .py file to run. Second, instead of using the $host and $port variables, I believe you can just do ‘python ospi.py 80’ to start up the program on http port 80. Note that you don’t have to put the files in /var/www/opensprinkler folder — when the python server starts, it will map the http link to whatever folder it’s running the ospi.py program from. For example, you can put it in /home/yourusername/OSPI and run the python program from there.
RayKeymasterI agree that a mode indication on the LCD would be useful.
I believe the firmware does show a ‘Rain Delayed’ message on the LCD when rain delay or rain sense is activated.
RayKeymasterIf you are connecting it directly to your laptop, I believe you need to use a cross-over cable. It’s similar to a standard Ethernet cable, but the pin connections are reversed.
In any case, if the LCD doesn’t ever go past ‘Connecting to the Network’ screen, it means there is a problem initializing the Ethernet controller. If it can go past that screen and display the time, then the problem is somewhere else.
RayKeymasterIf you switch to manual mode, all the programs will stop running until you switch back to program mode (i.e. manual off). If you just want to run an ad-hoc program and want the controller to automatically switch back to program mode, you should consider using the ‘Run-Once program’. Please refer to this section of the user manual:
http://rayshobby.net/?page_id=730#manual
RayKeymasterThe default max has probably been removed in the most recent firmware. It was put there previously to prevent leaving the valve on forever. But I think in the most recent firmware it has been set to indefinite until you turn it off.
RayKeymasterV2.0 uses ATmega644, which is basically twice as big as ATmega328 in all aspects (program memory space, RAM, EEPROM). So a lot more features can be added before reaching the limit.
RayKeymasterHi Mike, thanks for the update. I am glad it worked finally.
RayKeymasterVery cool. Thanks for sharing!
RayKeymasterIndeed if the program size is too close to the 32KB limit, you may run into SRAM overflow issue. It’s not because the program itself cannot fit in the flash memory, but it’s because the SRAM size it needs (including temporary variables) at run-time may exceed the 2KB available on mega328. So you have to play around with deleting some code to reduce the SRAM consumption.
RayKeymasterOK, thanks for the update.
RayKeymasterYes, it is a formatter (those %d, %f, %u things in the printf function). The BufferFillter.emit_p function is designed to be similar to the printf.
RayKeymasterAs I am preparing for Maker Faire demos, I came up with a potentially simpler way to do in-house hosting of the Javascripts. The way I did was to use a Raspberry Pi, and put the relevant files (Javascripts as well as icon images) to a local holder on RPi, say ~/osfiles. Then in that folder, run ‘sudo python -m SimpleHTTPServer 80’. This will start an HTTP server so that you can access the files through the following (assuming the RPi’s ip address is 192.168.1.50):
http://192.168.1.50
This can be set as a startup script so that it will automatically start when the RPi restarts.Then in OpenSprinkler source code, modify the JAVA_SCRIPT_PATH to from ‘http://rayshobby.net/scripts/java/…..’ to ‘http://192.168.1.50/scripts/java…’. That’s it. Basically it’s using the python’s SimpleHTTPServer module as a simple way to serve the files.
The downside of this is that it involves an RPi (or some other server that should be on at all times), and modifying the OpenSprinkler source code.
RayKeymasterHi Denny, just want to check back and see if the issue has been solved. Try to plug the controller to another network, and see if it can get the time successfully. If you cannot resolve the issue, I am happy to take it for return.
RayKeymasterThanks for your positive feedback. When I first saw your post title, I thought you mean your DIY board was fried or something, which scared me 🙂
Regarding the expansion boards, it’s unlikely the DIY version will be offered again. I am trying to consolidate the number of products and versions in order to reduce the overhead. For the expansion board, I may consider offering just the PCB and then provide Digikey links to the components. This should be easy to prepare.
RayKeymasterHave you programmed in C or Java? The $D is similar to printf”%d”) in C, which means printing out an integer number. In any case, that part of the code uses Jeelab’s EtherCard library, and you may want to check their documentations and forum for answers to specific questions.
RayKeymasterNo, OpenSprinkler does not have USB host functionality, so you can’t use a USB adapter.
Please check this section of the user manual for recommended WiFi Adapters:
http://rayshobby.net/?page_id=3775#network
Also, this blog post explains how to power the WiFi adapter through the USB port:
http://rayshobby.net/?p=4233I would say it’s ok to put everything in a water tight box. I haven’t tried this myself, so I don’t know for sure. But the controller consumes less than 1 watt of power during operation, so I assume it shouldn’t produce much heat at all.
RayKeymaster5V VAC? Or do you mean 5V DC? Do you have a 5V AC transformer or where is it coming from?
The LED is a power indicator, it is not for showing station status, it merely indicates the 5V line is available.
COM is connected to one of the 24VAC wires. If you don’t provide AC voltage to the 24VAC in terminal,, there won’t be any voltage output. 5V is only used for signal logic, it is not used to power the sprinkler solenoids.
RayKeymasterThe terminal screws are sourced from China and the part numbers are 2EDG5.08 8p. Someone else asked about this and found the equivalent digikey parts:
2 plug: http://www.digikey.com/product-detail/en/20020007-G021B01LF/609-4179-ND/25091352 header: http://www.digikey.com/product-detail/en/20020109-G021A01LF/609-4257-ND/2509105
8 plug: http://www.digikey.com/product-detail/en/20020006-G081B01LF/609-3847-ND/2261392
8 header: http://www.digikey.com/product-detail/en/20020109-G081A01LF/609-4261-ND/2509144
Note, however, the cutouts on the 1.3 enclosure are not high enough, so I suspect these parts won’t be able to pass through the enclosure (unless if you can cut the enclosure yourself, or leave the controller without enclosure).
RayKeymasterCool, that’s a neat discovery. I will add this to the blog post.
RayKeymasterSorry, I don’t have any spare time to do that. If someone is willing to do this, I am happy to host and share the file.
RayKeymasterIf you mean the OpenSprinkler 1.x generation hardware, yes, Arduino 0023 in Linux is still the preferred software. The firmware for the upcoming 2.0 will compile in Arduino 1.04.
I just wrote a blog post this morning about a VirtualBox image for compiling the current OpenSprinkler source code. Basically I’ve created a virtual Linux image file with all the necessary software and tools pre-installed, so you can use it with VirtualBox for compiling the source code. The blog post is here:
http://rayshobby.net/?p=6149
RayKeymasterUnfortunately the firmware does not leave a way to manually set the clock (I didn’t think there would be a situation where you have Internet connection but no NTP sync). There are several ways you can set the clock (for example, plug it into another network which permits NTP sync, or upload an Arduino program that manually sets the clock. But in any case, I don’t recommend using the system without NTP, because the time will drift and after several months you may have to do the same trick again.
RayKeymasterGlad to hear that you solved the problem so quickly. Thanks for sharing.
-
AuthorPosts