Category Archives: Engineering

ESP8266 Arduino `.text’ will not fit in region `iram1_0_seg’ Error

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.

Continue reading

ILI9341 and XPT2046 TFT display on ESP8266

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.

Continue reading

Separated Rotary Engine

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!

ESP8266 Successor – ESP32 released with CAN bus supportĀ 

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/ 

Continue reading

ESP8266 CAN Bus with MCP2515

I have just bought another ESP8266/NodeMCU development board cheapy from eBay (this one) with an ESP-12E chip on board. I’ve also bought an SPI-CAN bus interface with the common Microchip MCP2515 CAN controller to try and create a CAN-Wifi gateway.

The pinout for the ESP-12E NodeMCU board is apparently as below:
ESP-12E NodeMCU Pinout

Continue reading

3SGTE Mk2 MR2 Turbo Lambda/Oxygen Sensor Part Number

I had real trouble finding a suitable alternative oxygen/lambda probe for my 1992 Rev 2 MR2 Turbo. I can’t find the original Denso part number at the moment, but I managed to find that a Denso DOX-0107 fits the flange size correctly and is 1-wire, it just requires soldering to the original connector. It’s got a Flange 44 type flange which apparently matches the 3SGTE.

I got it from http://service-parts.co.uk/denso-oxygen-sensor-dox-0107