I am trying to make a D1 mini receive data on its input pins and send it to the serial monitor.
I think they are broken but picked them out of the bin for a last try.
For two weeks the test sketch compiled and was said to have been successfully uploaded but this morning both IDEs 1.8.19 and 2.3.6 spat out this compiling error
fork/exec {runtime.tools.python3.path}/python3: no such file or directory
Error compiling for board Generic ESP8266 Module.
The sketch compiled fine a couple of days earlier. BUT I had made the fatal error of updating my libraries for both IDEs between the sketch verifying and today. So I deleted the Libraries in [Myname]/Documents/Arduino/ and recovered the contents of the folder from a backup. It made no difference. So I deleted the contents of [Myname]/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries and restored that from a backup.
This still did not force it to revert to its behaviour before the weekend.
I have searched my computer for “python” and remarkably I still have python3 installed. Its directory is python3.9 in the structure of “Pycharm projects”. This is from before I used Arduinos, I have not knowingly installed another python3 for the IDE.
Has anybody got a scooby of how to make either (or both) IDEs behave in the same way they did three days ago?
Or a suggestion of how to hack the directory structure of my iMac so that Arduino IDE can see what my mk1 eyeball can?
Or has the butterfly flapped its wings and in doing so removed all ESP functionality from my stupidly-expensive-and-not-worth-a-fraction-of-the-cost computer?
I am running an m3 iMac with Sequoia (15.6). It has 16GB RAM and plenty of disk space.
Thank you in advance for your suggestions.
Oh the sketch..using the esp library for the DHT11, and added the pinMode() in case it would force the D1 to return any value other than “nan” to the serial monitor )it didn’t). But my priority ids no longer to luck the board type and port combo but to get it to compile at all.
#include "DHTesp.h"
DHTesp dht;
void setup() {
Serial.begin(115200);
dht.setup(3, DHTesp::DHT11);
pinMode(3, INPUT);
}
void loop() {
float h = dht.getHumidity();
float t = dht.getTemperature();
Serial.print("{\"humidity\": ");
Serial.print(h);
Serial.print(", \"temp\": ");
Serial.print(t);
Serial.print("}\n");
delay(2000);
}
Thanks.