The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
1. The lounge is for the CodeProject community to discuss things of interest to the community, and as a place for the whole community to participate. It is, first and foremost, a respectful meeting and discussion area for those wishing to discuss the life of a Software developer.
The #1 rule is: Be respectful of others, of the site, and of the community as a whole.
2. Technical discussions are welcome, but if you need specific programming question answered please use Quick Answers[^], or to discussion your programming problem in depth use the programming forums[^]. We encourage technical discussion, but this is a general discussion forum, not a programming Q&A forum. Posts will be moved or deleted if they fit better elsewhere.
4. No politics (including enviro-politics[^]), no sex, no religion. This is a community for software development. There are plenty of other sites that are far more appropriate for these discussions.
5. Nothing Not Safe For Work, nothing you would not want your wife/husband, your girlfriend/boyfriend, your mother or your kid sister seeing on your screen.
6. Any personal attacks, any spam, any advertising, any trolling, or any abuse of the rules will result in your account being removed.
7. Not everyone's first language is English. Be understanding.
Please respect the community and respect each other. We are of many cultures so remember that. Don't assume others understand you are joking, don't belittle anyone for taking offense or being thin skinned.
We are a community for software developers. Leave the egos at the door.
I have both professional versions at work and they can coexist pretty well.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
That's Sean I'm afraid. It's why he wears the Mankini - you don't notice his other deformities when presented with that horror ...
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
I stayed up until 2:30am working on my father in law's pump monitor.
It turns out I had accidentally flashed the onboard wifi chip with bad microcode.
To make matters worse, you can't just find a bin file and reflash it. No, you have to cross-compile the firmware sourcecode and *then* flash it. To add to the complication, the firmware is different depending on how much RAM and EPROM you have and the board shipped with no instructions and doesn't say its configuration. The boards ship with different sizes of each.
Anyway, I finally got that done, and then I finally figured out how to monitor the hardware serial port #1 from my PC so I could get debug spew. That was a godsend!
Now I've got it doing everything it should - connecting to wifi, logging in and sending UDP packets every half second to a fixed IP address based on the state of 3 digital input pins.
What's left is to basically drive some switches carrying 3.3volt DC, flipped by their 120volt ac inputs using a dry relay setup, and then testing to make sure the client software works on windows, not just linux.
Woot. I'm very nearly done with this little monster.
The thing that gets me is I have no idea how I managed to pull this off with no instructions. Even just installing the toolchain to compile the firmware was a nightmare.
If anyone wants to know how to build and flash firmware for an Arduino Mega with an onboard ESP8266 wifi chip, I'm your monster!
I'm not going to cover reflashing the firmware because it's different on every device. That's what makes it so complicated. My way works for a robodyn board clone with a particular esp8266 configuration of(32Mbit/1024x1024) in terms of memory, and flash sizes. The odds most everyone having that same thing aren't very good, and if they did it wouldn't be this board, which isn't the most popular. I may write an article about that portion in the future.
That said, you don't need to flash the "AT" firmware to the 8266 if you don't muck it up in the first place like I did. They come out of the box with that firmware.
I will cover installing the WifiEsp package using the Arduino IDE, and wiring up the Arduino Mega style board to the pump circuits using relays.
I'll also cover the client software.
It may be a bit before I can produce an article as we still have to purchase the outdoor wifi repeater(s) to get the signal down to the pumphouse, and get the 3 relays to make it work
I have unlimited 120vac power right there. My biggest problem is going from 110-120VAC to <5 DC.
Here's the deal: There are existing circuits in the pumphouse that report the status using a series of standard incandescent lights. They are all 120vac. What I'm going to do is tap the power to those lights and use them to drive some relay coils. The associated relay switches will be wired into the arduino. Easy peasy, because I don't care much about contact bounce or anything.
Real programmers use butterflies
Last Visit: 30-Oct-20 16:57 Last Update: 30-Oct-20 16:57