View Single Post
Old 07-29-2018, 10:44 AM   #1
davepl
Registered User
 
davepl's Avatar
 
Join Date: Aug 2006
Location: Redmond, WA
Posts: 6,332
Dave's Neck, Compressor, Electronics

Feel free to move this to OT, but I'm following up on two topics we were discussing briefly here so thought I'd follow up here!

First, my neck - if you recall, I blew out my C6/C7 spinal disc. Completely ruptured it, the goo came out, bone on bone with the nerve pinched between. Not pretty, and no painkillers. But it's been almost TWO MONTHS now and I'm at least 90% healed up, maybe more. So a month laying flat on my back and then another one taking it easy and healing, and here I am!

That gave me a lot of time to learn electronics, so starting with a thread and some advice here, I undertook to learn basic digital electronics (breadboards, chips, ohm's law, etc) because I was a software guy with no hardware knowledge!

So, I took an ESP32-WROOM chip and built a compressor controller. My initial plan was to "soft-start" the compressor, but it turns out that's not always a great idea. So I just stuck with monitoring pressure and temperature and runtime and so on. So it only runs when I'm in the shop, won't run forever in case of a leak, and so on. But it's all about the learning, not for any practical purpose.

I used an Autex auto pressure sensor (like you'd use for EFI fuel pressure) to monitor the line pressures.

I got pretty much done but wanted to do more, so I added a web interface to my air compressor controller project so you can monitor/control the compressor via the Internet. Because the world needs Internet-connected air compressors! If I can figure out how to add the blockchain, I could have a serious valuation!

On days where I'm actively working on the project, it's up and live at:

http://1969pontiac.com:99/

But since its a breadboard with a mess of wires, I don't leave it running unattended when I'm not out there!

Anyway, I wrote/adapted an async web server to run on port 80, which serves web requests both for static files out of the onboard flash memory and also for a RESTful api that lets this page (or anyone) query the current pressure, temp, etc. The page is written with jquery and jquery UI and uses SVG graphics to render the gauges, no images.

As for the "why", it's just for learning. Serving a web page crosses a lot of boundaries - you connect to wifi, connect to the internet, set the clock from NTP, manage multiple TCP connections, serve files from the SPIFFS flash... jquery, jqueryui, javascript, json, svg, html5, and meanwhile, the chip's ADCs are reading the live pressures and temperatures. Pretty much everything gets involved except the Bluetooth!

Remember that there's no linux or windows on this thing - no operating system at all. Just bare metal. You and the chip, like the olden' days!
Attached Images
  
__________________
1970 GMC Sierra Grande Custom Camper - Built, not Bought
1969 Pontiac 2+2 427/390 4-speed Coupe
1969 Pontiac 2+2 427/390 4-speed Convertible
davepl is offline   Reply With Quote