jantje / hardware Goto Github PK
View Code? Open in Web Editor NEWArduino eclipse plugin hardware support folders
Arduino eclipse plugin hardware support folders
Hi Jantje,
I tried to add a comment to Debugging and unit testing Arduino (Part 3) on you blog but I'm not a registered user.
I have been following parts 1-3 and have had some issues with getting it to work. I've numbered my problems, so its easier to respond to each:
1/ in your refactoring of the original BlinkWithoutDelay code you have lost the setup() routine of the pinMode(LED_BUILTIN, OUTPUT); and as a consequence the UNO led does not flash properly when downloaded to the board.
2/ You added a EDIT Note about setting up the gcc compiler in your path capable of making local executables.
3/ I loaded cygwin64 and set the windows path environment variable, but
4/ the debug build has issues knowing where to get specific headers from and it seems to cause a clash between the arduino, jantje hardware and the cygwin header/libraries.
5/ Or is MingW preferred to be used? ( I saw another person's comments as he was using MingW.)
6/ Maybe some more detail about how to configure each build configuration would be helpful.
7/ Also I assumed that the jantje hardware files needed to be installed in the private library/hardware path.
8/ When will the next installment part 4 be available to show the unit testing with googletest? I noticed that gtest is in your jantje hardware files.
9/ I noticed that eclipse-arduino IDE has the C/C++ unit testing support plugin component/view installed so I'm keen to see some examples of how to use it. I know you are quite busy.
10/ Maybe we could use this project as a test project to the IDE test team, once it works fully?
I'm sure everything will work it's just some of the steps aren't too obvious as to how to control the library usage between the windows compiler, Arduino and your library?
Regards, Phil.
[email protected]
Hello to everyone. I'm having trouble when degugging the module, with the example code Blinky. The debugging session is started correctly, but when trying to insert a breakpoint, i get a warning saying: "Breakpoint Installation Failed". Apart from that, I can't debug step by step, the button isnt even enabled.
What im using:
-Sloeber V4.2 as IDE
-Arduino Core V 2.3.0
-Jantje ESP Hardware debug 1.0
-ESP8266(ESP-01 Black version)
Here is the debugger console output:
GNU gdb (GDB) 7.11
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details.
This GDB was configured as "--host=i686-pc-mingw32 --target=xtensa-lx106-elf".
Type "show configuration" for configuration details.
For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word".
(trace) gdbarch_init()
(trace) gdbarch_init()
(trace) xtensa_unwind_pc (next_frame = 0x82c1e40)
(info ) [xtensa_unwind_pc] pc = 0x4010025b
(trace) xtensa_alloc_frame_cache ()
(trace) call0_analyze_prologue (start = 0x4010025b, pc = 0x4010025b, ...)
(verb ) [call0_analyze_prologue] stopped at instr addr 0x4010025b, succeeded
gdbstub_do_break_breakpoint_addr () at D:\sloeber\arduinoPlugin\packages\Jantje\hardware\esp8266\1.0.0\libraries\gdb\gdbstub-entry.S:399
399 break 0,0
Warning: the current language does not match this frame.
(trace) xtensa_skip_prologue (start_pc = 0x40107038)
(trace) xtensa_breakpoint_from_pc (pc = 0x4010703d)
(trace) xtensa_skip_prologue (start_pc = 0x40107038)
(trace) xtensa_breakpoint_from_pc (pc = 0x40107044)
(trace) xtensa_skip_prologue (start_pc = 0x40106ff8)
(trace) xtensa_skip_prologue (start_pc = 0x40106ff8)
(trace) xtensa_breakpoint_from_pc (pc = 0x40106ffd)
(trace) xtensa_breakpoint_from_pc (pc = 0x40106ffd)
(trace) xtensa_breakpoint_from_pc (pc = 0x40106ffd)
(trace) xtensa_breakpoint_from_pc (pc = 0x4010703d)
Attempting to performe a debug of the STM32F103C8 board for instance and after watching your video about "Debug your arduino code with the zero and Sloeber" I tried with this board and after setting all up I got an error as soon I hit debug, saying:
Error while launching command: $(eclipse_home)\arduinoPlugin\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1\bin\arm-none-eabi-gdb.exe --version
The setup path for the debug config are:
->config option:
-s ${openocd_path}/../share\openocd\scripts -f \target\stm32f1x.cfg
->Executable:
$(eclipse_home)\arduinoPlugin\packages\arduino\tools\arm-none-eabi-gcc\4.8.3-2014q1\bin\arm-none-eabi-gdb.exe
Path for the OpenOCD folder:
C:\Embeded\sloeber\arduinoPlugin\packages\arduino\tools\openocd\0.9.0-arduino6-static\bin
Any Idea?
Thanks
hi.
I try debugging arduino with
EclipseMars(64bit) for win7 64bit.
Java 8.5.1 (64bit)
Arduino 1.6.1 (32bit)
MinGW 32 4.8.1
I was follow http://blog.baeyens.it/#comments23 .
also, #2 .
meet error
18:27:27 **** Incremental Build of configuration Release for project debugDemo ****
make all
Starting combiner
"g++" -Os -Wl,--gc-sections -o "D:/WorkspaceArduino/debugDemo/Release/debugDemo.exe" ./.ino.cpp.o arduino.ar "D:/WorkspaceArduino/debugDemo/Release/arduino.ar" "-LD:/WorkspaceArduino/debugDemo/Release" -lm -lpthread
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot find -lpthread
collect2.exe: error: ld returned 1 exit status
make: *** [debugDemo.elf] Error 1
18:27:29 Build Finished (took 2s.256ms)
Eclipse Version:
Eclipse IDE for C/C++ Developers
Version: 2019-03 (4.11.0)
Build id: 20190314-1200
Arduino C++ Tools 9.7.0.201903011129
Sloeber, the Eclipse Arduino IDE (plugin version) 4.3.1.201810101819
** Describe the bug **
I debugging MWC2.2 flight control for Flexbot quad board.
localdebug build below error message
In file included from ../sloeber.ino.cpp:105:
../HexNanoMWC_QUAD.ino:799:9: error: expression is not assignable
ADCSRA |= _BV(ADPS2) ; ADCSRA &= ~_BV(ADPS1); ADCSRA &= ~_BV(ADPS0); // this speeds up analogRead without loosing too much resolution: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1208715493/11
~~~~~~ ^
../HexNanoMWC_QUAD.ino:799:32: error: expression is not assignable
ADCSRA |= _BV(ADPS2) ; ADCSRA &= ~_BV(ADPS1); ADCSRA &= ~_BV(ADPS0); // this speeds up analogRead without loosing too much resolution: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1208715493/11
~~~~~~ ^
../HexNanoMWC_QUAD.ino:799:55: error: expression is not assignable
ADCSRA |= _BV(ADPS2) ; ADCSRA &= ~_BV(ADPS1); ADCSRA &= ~_BV(ADPS0); // this speeds up analogRead without loosing too much resolution: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1208715493/11
~~~~~~ ^
In file included from ../sloeber.ino.cpp:112:
../Output.ino:357:14: error: expression is not assignable
TCCR4A |= (1<<WGM41); // phase correct mode
~~~~~~ ^
../Output.ino:358:14: error: expression is not assignable
TCCR4A &= ~(1<<WGM40);
~~~~~~ ^
../Output.ino:363:14: error: expression is not assignable
TCCR4A |= _BV(COM4A1); // connect pin 6 to timer 4 channel A
~~~~~~ ^
In file included from ../sloeber.ino.cpp:113:
../RX.ino:384:21: error: use of undeclared identifier 'cli'
oldSREG = SREG; cli(); // Let's disable interrupts
^
In file included from ../sloeber.ino.cpp:114:
../Sensors.ino:156:8: error: expression is not assignable
TWSR = 0; // no prescaler => prescaler = 1
../Sensors.ino:157:8: error: expression is not assignable
TWBR = ((F_CPU / I2C_SPEED) - 16) / 2; // change the I2C clock rate
~~~~ ^
../Sensors.ino:158:8: error: expression is not assignable
TWCR = 1<<TWEN; // enable twi module, no interrupt
~~~~ ^
../Sensors.ino:162:8: error: expression is not assignable
TWCR = (1<<TWINT) | (1<<TWSTA) | (1<<TWEN) ; // send REPEAT START condition
~~~~ ^
../Sensors.ino:164:8: error: expression is not assignable
TWDR = address; // send device address
~~~~ ^
../Sensors.ino:165:8: error: expression is not assignable
TWCR = (1<<TWINT) | (1<<TWEN);
~~~~ ^
../Sensors.ino:170:8: error: expression is not assignable
TWCR = (1 << TWINT) | (1 << TWEN) | (1 << TWSTO);
~~~~ ^
../Sensors.ino:175:8: error: expression is not assignable
TWDR = data; // send data to the previously addressed device
~~~~ ^
../Sensors.ino:176:8: error: expression is not assignable
TWCR = (1<<TWINT) | (1<<TWEN);
~~~~ ^
../Sensors.ino:181:8: error: expression is not assignable
TWCR = (1<<TWINT) | (1<<TWEN) | (ack? (1<<TWEA) : 0);
~~~~ ^
../Sensors.ino:201:12: error: expression is not assignable
TWCR = 0; //and we force a reset on TWINT register
~~~~ ^
../Sensors.ino:801:8: error: expression is not assignable
TWBR = ((F_CPU / 400000L) - 16) / 2; // change the I2C clock rate to 400kHz, ADXL435 is ok with this speed
~~~~ ^
Hello
I am struggling in making the gdb debug working on my NodeMCU ESP-12E, using the test blink.ino, in Sloeber standalone.
I use the jantje GIT master (that works with core 2.4.2)
I have configured the target in order to add -ggdb -Og option
I built the sketch and upload it on the target, then tried to connect with a GDB debug target with the .\com4 serial connection. Of course I set the host gdb to the jantje delivere one and set gdbcmds as well.
The debug target is set to stop on setup()
I try to attach to the target but after 10 seconds more or less I get this error:
Error in final launch sequence:
Failed to execute MI command:
-target-select remote .\\.\\com4
Error message from debugger back end:
Bogus trace status reply from target: timeout
Failed to execute MI command:
-target-select remote .\\.\\com4
Error message from debugger back end:
Bogus trace status reply from target: timeout
Bogus trace status reply from target: timeout
It seems that the com4 is correctly opened but there is no answer from the target.
I have followed the Sloeber video on youtube, so I really don't know what can be the problem
Thanks for the support
Compilation fails.
I'm trying to follow your video on debugging esp8266 code. When I create and activate the debug configuration and switch the toolchain to yours, I get the following error on building:
08:26:39 **** Build of configuration Debug for project Test ****
make all
Building file: ../Test.cpp
Starting C++ compile
"/Users/crazor/Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-I/Users/crazor/Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/include" "-I/Users/crazor/Applications/sloeber.app/Contents/Eclipse//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/lwip/include" "-I/Users/crazor/Documents/sloeber-workspace/Test/Debug/core" -c -Wall -Wextra -g -ggdb -Og -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11 -MMD -ffunction-sections -fdata-sections -DDEBUG -DDEBUG_ESP_PORT=Serial -DDEBUG_ESP_CORE -DDEBUG_ESP_SSL -DDEBUG_ESP_WIFI -DDEBUG_ESP_HTTP_CLIENT -DDEBUG_ESP_HTTP_UPDATE -DDEBUG_ESP_HTTP_SERVER -DDEBUG_ESP_UPDATER -DDEBUG_ESP_OTA -DDEBUG_TLS_MEM -DF_CPU=80000000L -DLWIP_OPEN_SRC -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_ESP12" -DESP8266 -I"/Users/crazor/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.4.2/cores/esp8266" -I"/Users/crazor/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.4.2/variants/nodemcu" -MMD -MP -MF"Test.cpp.d" -MT"Test.cpp.o" -D__IN_ECLIPSE__=1 -x c++ "../Test.cpp" -o "Test.cpp.o"
In file included from /Users/crazor/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.4.2/cores/esp8266/Arduino.h:38:0,
from ../Test.h:9,
from ../Test.cpp:1:
/Users/crazor/Applications/sloeber.app/Contents/Eclipse/arduinoPlugin/packages/esp8266/hardware/esp8266/2.4.2/cores/esp8266/esp8266_peri.h:24:21: fatal error: c_types.h: No such file or directory
#include "c_types.h"
^
compilation terminated.
make: *** [Test.cpp.o] Error 1
08:26:39 Build Failed. 2 errors, 0 warnings. (took 184ms)
I'm trying this with a newly created project and I've started over several times, but I can't get past this. Any help would be appreciated!
setup: I have the blink project, with a Debug configuration. It compiles fine in Debug and I cna run unit tests.
When I add the #include "SoftwareSerial.h" in blink.ino, Debug compilation breaks.
08:41:47 **** Incremental Build of configuration Debug for project blink ****
"C:\\dev\\sloeber\\arduinoPlugin\\tools\\make\\make" all
'Building file: ..\sloeber.ino.cpp'
'Starting C++ compile'
"C:\dev\sloeber\arduinoPlugin\packages\Jantje\tools\MinGW\5.3.0/bin/g++" -c -g -O0 -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -DF_CPU=16000000L -DARDUINO=10802 -DARDUINO_AVR_UNO -DARDUINO_ARCH_PC -DLOCAL_RUN -I"C:\dev\sloeber\arduinoPlugin\packages\Jantje\hardware\pc\1.0.2\cores\arduino" -I"C:\dev\sloeber\arduinoPlugin\packages\arduino\hardware\avr\1.6.21\variants\standard" -I"C:\dev\sloeber\arduinoPlugin\libraries\gtest\1.0.1" -I"C:\dev\sloeber\arduinoPlugin\packages\Jantje\hardware\pc\1.0.2\libraries\SoftwareSerial" -MMD -MP -MF"sloeber.ino.cpp.d" -MT"sloeber.ino.cpp.o" -D__IN_ECLIPSE__=1 -x c++ "..\sloeber.ino.cpp" -o "sloeber.ino.cpp.o" -Dsrandom=srand -Drandom=rand
'Finished building: ..\sloeber.ino.cpp'
' '
'Building file: C:\dev\sloeber\arduinoPlugin\packages\Jantje\hardware\pc\1.0.2\libraries\SoftwareSerial\SoftwareSerial.cpp'
'Starting C++ compile'
"C:\dev\sloeber\arduinoPlugin\packages\Jantje\tools\MinGW\5.3.0/bin/g++" -c -g -O0 -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -DF_CPU=16000000L -DARDUINO=10802 -DARDUINO_AVR_UNO -DARDUINO_ARCH_PC -DLOCAL_RUN -I"C:\dev\sloeber\arduinoPlugin\packages\Jantje\hardware\pc\1.0.2\cores\arduino" -I"C:\dev\sloeber\arduinoPlugin\packages\arduino\hardware\avr\1.6.21\variants\standard" -I"C:\dev\sloeber\arduinoPlugin\libraries\gtest\1.0.1" -I"C:\dev\sloeber\arduinoPlugin\packages\Jantje\hardware\pc\1.0.2\libraries\SoftwareSerial" -MMD -MP -MF"libraries\SoftwareSerial\SoftwareSerial.cpp.d" -MT"libraries\SoftwareSerial\SoftwareSerial.cpp.o" -D__IN_ECLIPSE__=1 -x c++ "C:\dev\sloeber\arduinoPlugin\packages\Jantje\hardware\pc\1.0.2\libraries\SoftwareSerial\SoftwareSerial.cpp" -o "libraries\SoftwareSerial\SoftwareSerial.cpp.o" -Dsrandom=srand -Drandom=rand
C:\dev\sloeber\arduinoPlugin\packages\Jantje\hardware\pc\1.0.2\libraries\SoftwareSerial\SoftwareSerial.cpp:41:27: fatal error: avr/interrupt.h: No such file or directory
compilation terminated.
libraries\SoftwareSerial\subdir.mk:18: recipe for target 'libraries\SoftwareSerial\SoftwareSerial.cpp.o' failed
make: *** [libraries\SoftwareSerial\SoftwareSerial.cpp.o] Error 1
08:41:47 Build Failed. 3 errors, 0 warnings. (took 812ms)
config & workspace shown below:
steps:
Note: I had to first define the runtime.tools.mingw.path environment variable to avoid an invalid make rule.
'Building file: C:\github\hardware\jantje\avr_local\cores\arduino\Arduino.cpp'
'Starting C++ compile'
"C:/Program Files (x86)/mingw-w64/i686-8.1.0-posix-dwarf-rt_v6-rev0/mingw32/bin/g++" -c -g -O0 -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -DF_CPU=16000000L -DARDUINO=10802 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR_LOCAL -DLOCAL_RUN -I"C:\github\hardware\jantje\avr_local\cores\arduino" -I"C:\sloeber\arduinoPlugin\packages\arduino\hardware\avr\1.6.21\variants\standard" -MMD -MP -MF"core\core\Arduino.cpp.d" -MT"core\core\Arduino.cpp.o" -D__IN_ECLIPSE__=1 -x c++ "C:\github\hardware\jantje\avr_local\cores\arduino\Arduino.cpp" -o "core\core\Arduino.cpp.o" -Dsrandom=srand -Drandom=rand
In file included from C:\github\hardware\jantje\avr_local\cores\arduino\Arduino.h:9,
from C:\github\hardware\jantje\avr_local\cores\arduino\Arduino.cpp:2:
C:\github\hardware\jantje\avr_local\cores\arduino\defines.h:46:22: error: lvalue required as unary '&' operand
#define DDRB (0x04)
^
C:\sloeber\arduinoPlugin\packages\arduino\hardware\avr\1.6.21\variants\standard/pins_arduino.h:129:14: note: in expansion of macro 'DDRB'
(uint16_t) &DDRB,
^~~~
C:\github\hardware\jantje\avr_local\cores\arduino\defines.h:76:22: error: lvalue required as unary '&' operand
#define DDRC (0x07)
^
C:\sloeber\arduinoPlugin\packages\arduino\hardware\avr\1.6.21\variants\standard/pins_arduino.h:130:14: note: in expansion of macro 'DDRC'
(uint16_t) &DDRC,
^~~~
C:\github\hardware\jantje\avr_local\cores\arduino\defines.h:106:22: error: lvalue required as unary '&' operand
#define DDRD (0x0A)
My target is arduino1.6.1 debugging that use eclipse luna.
I was follow http://blog.baeyens.it/#comments23 .
I have errors this step [Right click the project->build configurations->build all.]
Capture
Capture Problems
in macOS clang compiler not supports --gc-sections options, can instead of -dead_strip options. My question is how to change makefile, because of generated file, it will refresh back every time. Thanks!
Using the following code under a blink project in local debug mode.
void setup() {}
void loop() {
String t((unsigned int)1);
}
That program crashes when run in local mode.
It works fine when removing the unsigned
qualifier.
Under debugger, it appears that calling from String(unsigned int)
char *utoa (unsigned char __val, char *__s, unsigned char __radix)
{
return utoa ((unsigned int) __val, __s, (int) __radix);
}
loops for ever.
This is because utoa
is not defined in stdlib.h, like itoa` is:
_CRTIMP __cdecl __MINGW_NOTHROW char* itoa (int, char*, int);
not sure what a proper fix is, as I'm not sure if this is a mingw or jantje issue.
I try to follow the video to debug my code on Arduino UNO.
With release mode, I can get a successful compilation as well as flash the code to the target board (default config which is: ../arduino/hardware/avr/1.6.21).
But when I create the debug_confg which used the avr_local (.../hardware/jantje/avr_local), immediately errors occur.
The console as follows:
23:50:21 **** Incremental Build of configuration LocalDebug1 for project DebugTest ****
"L:\\preProcess\\sloeber\\arduinoPlugin\\tools\\make\\make" all
'Building file: ..\sloeber.ino.cpp'
'Starting C++ compile'
"/bin/g++" -c -g -O0 -w -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -DF_CPU=16000000L -DARDUINO=10802 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR_LOCAL -DLOCAL_RUN -I"G:\eclipseLib\hardware\jantje\avr_local\cores\arduino" -I"G:\eclipseLib\hardware\jantje\avr_local\variants\standard" -MMD -MP -MF"sloeber.ino.cpp.d" -MT"sloeber.ino.cpp.o" -D__IN_ECLIPSE__=1 -x c++ "..\sloeber.ino.cpp" -o "sloeber.ino.cpp.o" -Dsrandom=srand -Drandom=rand
The system cannot find the path specified.
subdir.mk:18: recipe for target 'sloeber.ino.cpp.o' failed
make: *** [sloeber.ino.cpp.o] Error 1
23:50:22 Build Failed. 2 errors, 0 warnings. (took 675ms)
I have taken a long time for this but still cannot solve.
Could you please help to check and give me a solution to this problem.
Per Janjte's request, the following issue was closed in 'Sloeber/arduino-eclipse-plugin' and recreated here (san's Janjte's comments):
V4 ESP8266 Hardware Debug Works for 'Huzzah Breakout' board, but not for 'Huzzah Feather' board, #752
See Sloeber/arduino-eclipse-plugin#752
Hardware: ESP12, Adafruit Huzzah Breakout and Feather Boards
Core Version: 2.3.0
Computer: Dell, Intel Core i7 CPU, 870 @ 2.93Ghz, 16.0 GB RAM
OS: Windows 10 Professional
IDE: Sloeber 4.0.1.201705071425
Per your Youtube video on how to setup Sloeber for hardware debugging of the ESP8266, I successfully got debugging to work for the Adafruit Huzzah Breakout Board. The Huzzah Feather Board, however, seems to have timing issues with both the uploading of the debug sketch and initiating a debugger dialog.
To facilitate testing, (2) 'blink' example projects were created:
Debug Config. Release Config. Serial Project Title
A) Debug Board with 1.65 SDK Huzzah Feather with 1.65 SDK COM4 blink_wtdelay_gdbA_r1p65
B) Debug Board with 1.65 SDK Huzzah Breakout with 1.65 SDK COM6 blink_wtdelay_gdbB_r1p65
Initially, only project A existed; project B was created after project A's debug sketch wouldn't upload. Project B's debug sketch did upload, and invoking the Debug perspective resulted in a successful debug session. Project A's debug sketch was then uploaded using the admin. command prompt to run a different 'esptool', but switching to the Debug perspective only resulted in a partial load and the following timeout message:
Error in final launch sequence
Failed to execute MI command:
-target-select remote /./COM4
Error message from debugger back end:
Bogus trace status reply from target: timeout
Bogus trace status reply from target: timeout
Hence it was concluded that the Huzzah Feather Board likely has some software/hardware timing issues.
Project B Compiler/Upload Messages, Successful Debug Session
'Create eeprom image'
"C:\SloeberBeR1\/arduinoPlugin/packages/esp8266/tools/esptool/0.4.5/esptool.exe" -eo "C:\SloeberBeR1\/arduinoPlugin/packages/esp8266/hardware/esp8266/1.6.5-947-g39819f0/bootloaders/eboot/eboot.elf" -bo "C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbB_r1p65/debug/blink_wtdelay_gdbB_r1p65.bin" -bm qio -bf 40 -bz 4M -bs .text -bp 4096 -ec -eo "C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbB_r1p65/debug/blink_wtdelay_gdbB_r1p65.elf" -bs .irom0.text -bs .text -bs .data -bs .rodata -bc -ec
'Finished building: blink_wtdelay_gdbB_r1p65.hex'
' '
'Building target: blink_wtdelay_gdbB_r1p65'
'Printing size:'
"C:\SloeberBeR1\/arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9/bin/xtensa-lx106-elf-size" -A "C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbB_r1p65/debug/blink_wtdelay_gdbB_r1p65.elf"
C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbB_r1p65/debug/blink_wtdelay_gdbB_r1p65.elf :
section size addr
.data 1496 1073643520
.rodata 1716 1073645024
.bss 42192 1073646744
.irom0.text 178504 1075843088
.text 30240 1074790400
.debug_frame 4520 0
.debug_info 43855 0
.debug_abbrev 9320 0
.debug_aranges 1600 0
.debug_ranges 784 0
.debug_line 30937 0
.debug_str 12145 0
.comment 6680 0
.xtensa.info 56 0
.xt.lit 4824 0
.xt.prop 160620 0
.xt.prop._ZTV6Stream 12 0
.xt.prop._ZTV14HardwareSerial 12 0
.xt.prop._ZTV5Print 12 0
.debug_loc 18402 0
Total 547927
'Finished building target: blink_wtdelay_gdbB_r1p65'
Starting upload
using arduino loader
Starting reset using DTR toggle process
Toggling DTR
Continuing to useCOM6
Ending reset
LaunchingC:\SloeberBeR1\/arduinoPlugin/packages/esp8266/tools/esptool/0.4.9/esptool.exe -cd ck -cb 115200 -cp COM6 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbB_r1p65/debug/blink_wtdelay_gdbB_r1p65.bin
Output:
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbB_r1p65/debug/blink_wtdelay_gdbB_r1p65.bin to flash at 0x00000000
................................................................................ [ 37% ]
................................................................................ [ 75% ]
.................................................... [ 100% ]
/arduinoPlugin/packages/esp8266/tools/esptool/0.4.9/esptool.exe finished
upload done
Project A Compiler/Upload Messages, Failed Upload
'Create eeprom image'
"C:\SloeberBeR1\/arduinoPlugin/packages/esp8266/tools/esptool/0.4.5/esptool.exe" -eo "C:\SloeberBeR1\/arduinoPlugin/packages/esp8266/hardware/esp8266/1.6.5-947-g39819f0/bootloaders/eboot/eboot.elf" -bo "C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbA_r1p65/debug/blink_wtdelay_gdbA_r1p65.bin" -bm qio -bf 40 -bz 4M -bs .text -bp 4096 -ec -eo "C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbA_r1p65/debug/blink_wtdelay_gdbA_r1p65.elf" -bs .irom0.text -bs .text -bs .data -bs .rodata -bc -ec
'Finished building: blink_wtdelay_gdbA_r1p65.hex'
' '
'Building target: blink_wtdelay_gdbA_r1p65'
'Printing size:'
"C:\SloeberBeR1\/arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9/bin/xtensa-lx106-elf-size" -A "C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbA_r1p65/debug/blink_wtdelay_gdbA_r1p65.elf"
C:/Users/DELL/SloeberWork/Wksr1/blink_wtdelay_gdbA_r1p65/debug/blink_wtdelay_gdbA_r1p65.elf :
section size addr
.data 1496 1073643520
.rodata 1716 1073645024
.bss 42192 1073646744
.irom0.text 178504 1075843088
.text 30240 1074790400
.debug_frame 4520 0
.debug_info 43855 0
.debug_abbrev 9320 0
.debug_aranges 1600 0
.debug_ranges 784 0
.debug_line 30937 0
.debug_str 12145 0
.comment 6680 0
.xtensa.info 56 0
.xt.lit 4824 0
.xt.prop 160620 0
.xt.prop._ZTV6Stream 12 0
.xt.prop._ZTV14HardwareSerial 12 0
.xt.prop._ZTV5Print 12 0
.debug_loc 18402 0
Total 547927
'Finished building target: blink_wtdelay_gdbA_r1p65'
Starting upload
using arduino loader
Starting reset using DTR toggle process
Toggling DTR
Continuing to useCOM4
Ending reset
LaunchingC:\SloeberBeR1\/arduinoPlugin/packages/esp8266/tools/esptool/0.4.9/esptool.exe -cd ck -cb 921600 -cp COM4 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65/debug/blink_wtdelay_gdbA_r1p65.bin
Output:
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
/arduinoPlugin/packages/esp8266/tools/esptool/0.4.9/esptool.exe finished
upload done
Command Line Used to Succesfully Upload Project A's Debug Sketch (use version 0.4.5 rather than 0.4.9)
C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.5\esptool.exe -cd ck -cb 921600 -cp COM4 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65/debug/blink_wtdelay_gdbA_r1p65.bin
C/C++ Autotools support 9.2.1.201703062208 org.eclipse.cdt.autotools.feature.group Eclipse CDT
C/C++ Common GDB Support 9.2.1.201703062208 org.eclipse.cdt.gdb.feature.group Eclipse CDT
C/C++ Development Platform 9.2.1.201703062208 org.eclipse.cdt.platform.feature.group Eclipse CDT
C/C++ Development Tools 9.2.1.201703062208 org.eclipse.cdt.feature.group Eclipse CDT
C/C++ DSF GDB Debugger Integration 9.2.1.201703062208 org.eclipse.cdt.gnu.dsf.feature.group Eclipse CDT
C/C++ GNU Toolchain Build Support 9.2.1.201703062208 org.eclipse.cdt.gnu.build.feature.group Eclipse CDT
C/C++ GNU Toolchain Debug Support 9.2.1.201703062208 org.eclipse.cdt.gnu.debug.feature.group Eclipse CDT
ECF Core Feature 1.3.0.v20160823-2221 org.eclipse.ecf.core.feature.feature.group Eclipse.org - ECF
ECF Core SSL Feature 1.1.0.v20160823-2221 org.eclipse.ecf.core.ssl.feature.feature.group Eclipse.org - ECF
ECF Filetransfer Feature 3.13.2.v20160823-2221 org.eclipse.ecf.filetransfer.feature.feature.group Eclipse.org
ECF Filetransfer SSL Feature 1.1.0.v20160823-2221 org.eclipse.ecf.filetransfer.ssl.feature.feature.group Eclipse.org - ECF
ECF Httpclient4 Filetransfer Provider 3.13.2.v20160823-2221 org.eclipse.ecf.filetransfer.httpclient4.feature.feature.group Eclipse.org - ECF
ECF Httpclient4 Filetransfer SSL Provider 1.1.0.v20160823-2221 org.eclipse.ecf.filetransfer.httpclient4.ssl.feature.feature.group Eclipse.org - ECF
Eclipse 4 Rich Client Platform 1.5.3.v20170228-0512 org.eclipse.e4.rcp.feature.group Eclipse.org
Eclipse Help System 2.2.2.v20170301-0400 org.eclipse.help.feature.group Eclipse.org
Eclipse Platform 4.6.3.v20170301-0400 org.eclipse.platform.feature.group Eclipse.org
Eclipse RCP 4.6.3.v20170301-0400 org.eclipse.rcp.feature.group Eclipse.org
EMF - Eclipse Modeling Framework Core Runtime 2.12.0.v20160420-0247 org.eclipse.emf.ecore.feature.group Eclipse Modeling Project
EMF Common 2.12.0.v20160420-0247 org.eclipse.emf.common.feature.group Eclipse Modeling Project
Equinox p2, backward compatibility support 1.2.203.v20170131-1444 org.eclipse.equinox.p2.extras.feature.feature.group Eclipse.org - Equinox
Equinox p2, Discovery UI support 1.0.401.v20160901-1335 org.eclipse.equinox.p2.discovery.feature.feature.group Eclipse.org - Equinox
Equinox p2, headless functionalities 1.3.203.v20170131-1444 org.eclipse.equinox.p2.core.feature.feature.group Eclipse.org - Equinox
Equinox p2, minimal support for RCP applications 1.2.203.v20170131-1444 org.eclipse.equinox.p2.rcp.feature.feature.group Eclipse.org - Equinox
Equinox p2, Provisioning for IDEs. 2.2.203.v20170131-1444 org.eclipse.equinox.p2.user.ui.feature.group Eclipse.org - Equinox
Git integration for Eclipse 4.6.1.201703071140-r org.eclipse.egit.feature.group Eclipse EGit
Java implementation of Git 4.6.1.201703071140-r org.eclipse.jgit.feature.group Eclipse JGit
Marketplace Client 1.5.4.v20170222-1941 org.eclipse.epp.mpc.feature.group Eclipse Marketplace Client
Mylyn Commons 3.21.0.v20160707-1856 org.eclipse.mylyn.commons.feature.group Eclipse Mylyn
Mylyn Commons Connector: Discovery 3.21.0.v20160729-1739 org.eclipse.mylyn.discovery.feature.group Eclipse Mylyn
Mylyn Commons Connector: Monitor 3.21.0.v20160630-1702 org.eclipse.mylyn.monitor.feature.group Eclipse Mylyn
Mylyn Commons Identity 1.13.0.v20160630-1702 org.eclipse.mylyn.commons.identity.feature.group Eclipse Mylyn
Mylyn Commons Notifications 1.13.0.v20160721-2347 org.eclipse.mylyn.commons.notifications.feature.group Eclipse Mylyn
Mylyn Commons Repositories 1.13.0.v20160630-1702 org.eclipse.mylyn.commons.repositories.feature.group Eclipse Mylyn
Mylyn Context Connector: Eclipse IDE 3.21.0.v20160912-1820 org.eclipse.mylyn.ide_feature.feature.group Eclipse Mylyn
Mylyn Context Connector: Team Support 3.21.0.v20160701-1337 org.eclipse.mylyn.team_feature.feature.group Eclipse Mylyn
Mylyn Task List 3.21.0.v20160914-0252 org.eclipse.mylyn_feature.feature.group Eclipse Mylyn
Mylyn Task-Focused Interface 3.21.0.v20160815-2336 org.eclipse.mylyn.context_feature.feature.group Eclipse Mylyn
Mylyn Tasks Connector: Bugzilla 3.21.0.v20160909-1813 org.eclipse.mylyn.bugzilla_feature.feature.group Eclipse Mylyn
Mylyn WikiText 2.10.1.v20161129-1925 org.eclipse.mylyn.wikitext_feature.feature.group Eclipse Mylyn
Nebula Oscilloscope Widget 1.2.0.201704251513 org.eclipse.nebula.widgets.oscilloscope.feature.feature.group Eclipse Nebula
Remote System Explorer End-User Runtime 3.7.2.201610260947 org.eclipse.rse.feature.group Eclipse TM Project
Sloeber 4.0.1.201705071425 io.sloeber.feature.feature.group Jan Baeyens and Others
Sloeber, the Eclipse Arduino IDE 4.0.0.201705071425 io.sloeber.product null
jantje commented 9 hours ago
This is actually a issue for https://github.com/jantje/hardware repository and not for sloeber.
Do I understand correctly that the esp tool used is a wrong version?
Yes, that is correct; I've verified this for (2) separate installations. You did comment in the video that both the 1.65 and 2.30 SDK's were needed for debugging; I thought perhaps this was the reason.
To explore what 'esptool' version would upload Project A's debug sketch, I did some experimentation using the command prompt for:
a) My original Feather board, with peripherals attached (I2C bus, SD card, and interrupt lines; pretty full plate)
b) Another Feather board, no peripherals attached
c) My Breakout board, also sans peripherals
Test case B was added as a cross-check, as my original circuit needs all the lines controlling the ESP-12 boot mode for I/O. During reset, external logic fixes these line states to insure proper booting, then connects them to where they're needed.
Included below are excerpts from my notes recording the command prompt results for various esptool uploads:
================================
Test upload which failed using admin. command prompt:
Huzzah Feather Board, on protoboard with peripherals
C:\Users\DELL>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe -cd ck -cb 921600 -cp COM4 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
Huzzah Feather Board, stand-alone
C:\Users\DELL>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe -cd ck -cb 921600 -cp COM8 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
NOTE: The 'esptool' makes (3) attempts at connection before generating failure messages; the RED led followed BLUE led flash for each attempt.
Huzzah Breakout Board, stand-alone, expect this to work
C:\WINDOWS\system32>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe -cd ck -cb 115200 -cp COM6 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Access is denied.
Big Surprise!
When I used the above command, got a pop-up window stating:
"This app can't run on your PC
To find a version for your PC, check with the software publisher."
Futhermore, the following 'esptool' will not run now either on command line or through the Sloeber IDE
C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe
Now try 'esptool' from another install...
Huzzah Breakout Board, stand-alone
NOTE THAT THIS WORKS, IDENTICAL WITH PRIOR COMMANDS EXCEPT FOR COMPORT AND BAUDRATE SELECTION
C:\WINDOWS\system32>C:\SloeberBeR2\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe -cd ck -cb 115200 -cp COM6 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin to flash at 0x00000000
................................................................................ [ 37% ]
................................................................................ [ 75% ]
....................................................
Success! what just got changed!?
Go inspect file, found, but reported to be '0 bytes' in size.
Move to 'DamagedEsptool' folder
Copy 'esptool.exe' from 'SloeberBeR2' install to repair, test again...
THINGS SEEM BACK TO NORMAL
Suspect I damaged the file myself with a bad paste to the command line.
================================
Given the upload failures for both Feather boards, I conclude my peripheral hardware is not affecting the outcome. A successful upload to the Breakout board indicates the Feather board may be a key variable.
================================
1st test of alternate upload(s):
Older 'esptool' version, with args identical those just used with the 'newer' tool that failed.
Huzzah Feather Board, on protoboard with peripherals
C:\Users\DELL>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.5\esptool.exe -cd ck -cb 921600 -cp COM4 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin to flash at 0x00000000
....................................................................................................................................................................................................................
Huzzah Feather Board, stand-alone
C:\Users\DELL>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.5\esptool.exe -cd ck -cb 921600 -cp COM8 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin to flash at 0x00000000
....................................................................................................................................................................................................................
Huzzah Breakout Board, stand-alone, expect this to work
C:\WINDOWS\system32>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.5\esptool.exe -cd ck -cb 115200 -cp COM6 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin to flash at 0x00000000
....................................................................................................................................................................................................................
Given all uploads worked using the 'older' esptool with identical args, it would seem the 'newer' esptool needs a different set of arguments. Hence its likely the invocation of the 'newer' tool here is most likely an error.
================================
2nd test of alternate upload(s):
Newer 'esptool' version works with change of reset method, all cases.
C:\Users\DELL>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe -cd nodemcu -cb 921600 -cp COM4 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin to flash at 0x00000000
................................................................................ [ 37% ]
................................................................................ [ 75% ]
.................................................... [ 100% ]
C:\Users\DELL>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe -cd nodemcu -cb 921600 -cp COM8 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin to flash at 0x00000000
................................................................................ [ 37% ]
................................................................................ [ 75% ]
.................................................... [ 100% ]
Huzzah Breakout Board, stand-alone, expect this to work
C:\Users\DELL>C:\WINDOWS\system32>C:\SloeberBeR1\arduinoPlugin\packages\esp8266\tools\esptool\0.4.9\esptool.exe -cd nodemcu -cb 115200 -cp COM6 -ca 0x00000 -cf C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin
Uploading 216096 bytes from C:\Users\DELL\SloeberWork\Wksr1\blink_wtdelay_gdbA_r1p65\debug\blink_wtdelay_gdbA_r1p65.bin to flash at 0x00000000
................................................................................ [ 37% ]
................................................................................ [ 75% ]
.................................................... [ 100% ]
================================
This last test would indicate that the 'newer' esptool doesn't have an intrisic fault; it just needs different args.
Given this additional testing, its likely that
a) Preventing the 'newer' esptool from being invoked when the 'older' esptool is needed, and
b) Using a modified set of arguments when the 'newer' esptool is needed
would correct the problems seen the Huzzah Feather board.
As we see, source code within the SPI.h and SPI.c has been commented in avr_local folder.
Also, it is not possible to simply copy+paste traditional SPI libraries for Arduino boards.(It will throw up with the compiler and syntax errors, especially undefined SPCR,SPSR,SPDR etc. ).
when can we expect a debug feature to be updated in plugin for codes that requires SPI or EEPROM libraries?
My target is arduino1.6.1 debugging that use eclipseMars for win7 ,vitualbox 5.0, ubuntu 14.04 .
• Eclipse IDE for C/C++ Developers mars 64bit
• plugin : Arduino Eclipse Extensions 2.4
• Arduino 1.6.1
• win7: 64bit
• Oracle VM VirtualBox 5.0
• Ubuntu 14.04
I was follow http://blog.baeyens.it/#comments23 .
I have success this step
[Compile the project in the debug configuration (this is not strictly needed but it makes it easier to fill in the following forms)]
next step [Now we'll create a debug configuration for our debugDemo project using the "jantje hardware".]
also next step is fail . [Right click the project->build configurations->build all.]
Missing file or directory
What can I do for next?
Hi Kindly add support for Teensy if possible. :)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.