I ordered an ESP32 module from Ebay:
I’ve been writing some software for a Wifi based CAN data logger for the ESP8266 in the Arduino platform, and have been getting a bit of a strange error. It appeared to be related to using the std::string functions in my code – and although I have used this in other sketches without issue, I suddenly received the following error as soon as I simply declared a std::string variable:
c:/users/scott/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Scott\AppData\Local\Temp\build525647f6f8500d071cfab5cccf314276.tmp/ESPCANLogger.ino.elf section `.text' will not fit in region `iram1_0_seg'
collect2.exe: error: ld returned 1 exit status
See how to fix it after the break.
For my own future reference more than anything else, to get the ILI9341 (either Adafruit or otherwise) working on the ESP8266 using the Arduino development environment isn’t completely straightforward. I knew I had this working previously, but couldn’t find the info again, so am copying it here.
See the details after the break.
I’ve been following a series of videos on YouTube of a couple of guys who have been busy building a Briggs and Stratton engine with a transparent cylinder head. They’ve now got it running surprisingly well:
I dont see a lot of information on personal blogs/diy projects regarding the use of Visual Programming Languages, but this is what I use in my current role as a Control System Engineer developing engine control and test systems. I actually call them graphical programming languages, so if I use the terms interchangably here then I’m actually talking about the same thing. We use visual programming languages for engine ECU control code and Test Cell control code (Simulink + Stateflow and Labview respectively). I believe graphical programming languages are pretty widely used in the automotive industry, and appear to have massive buy in from plenty of other industries too. I think its easy to see why.
This is a pretty interesting concept – very similar to a ‘split cycle’ engine – basically the rotary version. A split cycle engine has the benefit of being able to split the compression and expansion cycles of a traditional internal combustion engine. This allows for different geometries in the combustion and expansion chamber, allowing for things such as very high expansion ratios verses compression ratios, and also potentially volume combustion in the case of this particular engine.
It looks as though this engine would still suffer some of the difficulties of traditional rotary engines, but still a very interesting concept!
So, the interesting little ESP8266 WiFi SoC finally has a younger brother which appears to be even more capable. Among other expansive updates, the 32 bit Dual Core microcontroller still supports WiFi, but also Bluetooth Low Energy, a DAC, many more ADCs, GPIO pins, etc. etc. Lots of good details here: http://esp32.net/
After the bearing failure on my MR2 Turbo, 3SGTE, I’ve been investigating bearing failures.
There are a couple of very good guides which provide an example of a number of different bearing failure modes.
MAHLE / Clevite bearing failure analysis: http://www.wilmink.nl/Clevite/Clevite_lagerschade_tech_info.pdf
More examples after the break
After dismantling my 3SGTE, we found that all of the bearings had picked up and one big end had spun completely and ripped the bearing in half. Most of them looked like this:
The crank was also scored and I suspect the con rod with the spun bearing my have gone oval too.