|
|
|
Gretchen lies down on a restaurant's bathroom floor Thursday, May 14 2026
Today in hopes of either doing procrastinated video work or finally integrating parsed inverter data from the cabin into my ESP8266 Remote Control system, I took a recreational 120mg dose of pseudoephedrine. (Note that, after Tuesday's experience, I didn't want the normal 150mg dose.) I soon made enough seeming progress on the video work (at least as far as Gretchen could tell) that I could focus on what I preferred to be working on: integrating the parser data.
Back in the late spring of 2024 when I'd originally figured out how to parse the old (now defunct) serial protocol communicating data between the SolArk inverter and its WiFi dongle, I'd assumed it was something of a fixed standard, so I'd hardcoded the parser code into the customized ESP8266 firmware the SolArk Copilot ran. I also hardcoded how that data was handled on the backend. But now that I know that the serial data format can change unpredictably, I wanted all stages of the parsing and saving of that data to be configurable in a way that would allow me to change it remotely without having to alter any firmware. I liked the new flexibility of the ESP8266-hosted serial parsing system, and I also wanted flexibility for how to handle that data on the backend. To that end, I decided to make a system that would allow the ESP8266-parsed data to be interpretable as any sort of data that could be saved in any table. I came up with a JSON specification to configure such a system and then had ChatGPT write me a couple functions to read that specification and use it to generate the SQL to insert records into whatever table was specified in the JSON. After a little testing a debugging, I had it working nicely and data was flowing once more from the SolArk Copilot directly into the inverter_log table. The backend then knew enough not to bother retrieving this data (in a much more stale, less-granular form) from the SolArk cloud.
Now that the serial parser was working reliably, I could attempt to expand the variety of data for it find. The configuration system that ChatGPT and I had collaborated on developing allowed me to specify a begin string, an end string, a bit of string to search for within that, and then offsets after that for where data was to be found. I could also rapidly switch the system to logging the raw data, allowing me to look it over for more nuggets of data that I could add to the parsing system. While it was moderately sunny, I captured a run of data that included the most data-rich blocks, ones that begin with the phrase "Characteristic #2." I had ChatGPT compare these to those same blocks from when there wasn't much sun and asked whether any of the values could be solar string voltage. None of them really seemed to be, though there was a value that seemed suspiciously like battery voltage in decivolts. Until I know better, I've decided that's what it is. I added the information to parse them to serialparser.cfg (a file hosted locally in the ESP8266's LittleFS file system) and then added the information to tell my backend where to put the parsed data to the SolArk Copilot's device record in the backend database. After a reboot, this battery information was appearing in the inverter_log battery_voltage column. This meant that I already had my inverter-data-gathering system back to the quality it was when SolArk changed the serial data specification back in October. I still haven't figured out how to gather the "grid_power" data (which, at the cabin, means "generator power"). I'd thought I'd had it back in 2024, but the value I was logging was either zero when the generator was off or about 6000 when it was on and didn't vary correctly. But I can figure that out at my leisure now from anywhere with an internet connection.
Fern, the Australian woman we befriended after she housesat for us back in 2023, has been a professor at Tufts University in Boston for the last year or so, but now she's broken up with her boyfriend (whom we didn't much like) and now is in the process of taking a job at the University of Montana in Missoula. This afternoon Fern met Gretchen for brunch at Little Loaf Bakery in New Paltz (Gretchen brought me back a vegan BLT-type sandwich) and then later she came by our house and will be spending one or two nights. She, Gretchen, and Charlotte all went on a big walk in the forest later this afternoon and then we all decided to go out for dinner at the Garden Café.
On the drive to Woodstock, Gretchen spotted a bear in someone's yard two or three miles north of our place on Dug Hill Road. So I stopped the car, backed up to a place were we had a clear view, and we watched the bear for nearly a minute while he or she leaned against a tree and casually looked at us.
Owing to the pseudoephedrine and some heavy snacking on spicy chipotle-flavored Mi Ni&ntild;a corn chips, I didn't have much of an appetite, but at the Garden I ordered a big potato-kale soup and the black bean burrito. There was a table near us with three nearly-identical-looking blond women about fifty years of age and wearing long colorful dresses. I wondered if there were identical triplets celebrating their shared birthday. For some reason we didn't talk about them but instead discussed the woman at the corner table dining alone. We wondered if we would feel okay dining alone. "At a diner I would," I said. Fern said she thought diners were perfectly appropriate places for dining alone.
Later in the meal, Gretchen disappeared for a long time, leaving just Fern and me talking about something (I've forgotten). Fern and I assumed Gretchen just got sucked up into a conversational vortex and lost track of time. She does this to me all the time and never seems to apologetic about it. But when Gretchen finally appeared, she looked ashen and said she was not feeling well. Something was wrong with her lower intestines that caused her to produce an enormous amount of what she described as "brown material." She'd thought she might vomit, but that never happened. But she was so weakened and sweaty at one point that she lay down on the floor of the bathroom. As restaurant bathrooms go, the ones at the the Garden are pretty tidy. But you'd have to be feeling pretty sick to lie down on its floor. Fern and I wrapped up our dinner after that, getting nearly all of Gretchen's portobello panini to go. (I'd only eaten the salad that came with my burrito, not the burrito itself, which I got a box for.)
Gretchen started recovering on the ride home, stretched out in the backseat of the Bolt. As we were going south on Basin Road behind some other car, it slowed way down and went over to left side of the road. I slowed down too to look at what was in the road. It was a pair of adult Canada Geese at the front and back of a line of two or three tiny baby geese marching down the road. Where were they going? Why did they have to go there out in the road? Our slowing down caused cars behind us to slow down, and they all saw what we saw. I hope those geese made it to wherever they were headed on foot.
Back at the house, Gretchen (who seemed mostly recovered) and I watched two episodes of Jeopardy! with Fern. She'd never seen the show before and only knew about it through global English-speaking culture. Interestingly, there were two Australia-related clues, and she knew the answer-in-the-form-of-a-question to neither of them. I only got one of them, the one whose answer was essentially "Coral Sea."
For linking purposes this article's URL is: http://asecular.com/blog.php?260514 feedback previous | next |