Problems with installing embeetle

Problems with installing the embeetle IDE

Hi @shopov,
Welcome to the forum!
I’m Kristof, one of the Embeetle developers. Could you please describe the problem you face? Hopefully I can help you.

For your info, here are the installation instructions:

Hello,

Thank you for your response. I think this is an interesting project, so I decided to give it a try.
I downloaded and unzipped the installation files in the ‘C:\tmp’ directory. When trying to execute ‘beetle_core\embeetle.exe’ from there, I got some mysterious errors about security from windows defender (I use Windows 10). Unzipping and executing from another directory (I tried ‘C:\src’) worked for me. Maybe you will want to investigate this, so I decided to report it.

Thank you,
Stoyan Shopov

Hi @shopov,
This is indeed a problem. Our executable is not signed, so Windows sometimes regards it as a threat.
The problem you encounter is (I think) the “block at first sight” feature from Windows 10. I’ve written a page on our website to explain the solution:

https://embeetle.com/#embeetle-ide/download/problems-launching-on-windows

Please let me know if this helped. :slight_smile:

Hello, @kristof

What do you know, these instructions do indeed work for me, thanks!

However, for the time being, I prefer to leave the Windows Defender setting enabled, as I can simply run the executable from another directory without problems.

Thanks!

That’s interesting @shopov. I didn’t know it would help to put Embeetle in another directory. I’ll try that too.

By the way, there is a bug in the builtin Embeetle updater mechanism. To update to our newest version Embeetle 0.0.7, you will have to download it again from our website:
https://embeetle.com/#embeetle-ide/download

I’m sorry for this inconvenience.

Yes, it seemed strange to me as well, that the directory from which I run the executable makes a difference, I double checked this today.

I tried to download version 0.0.7 of Embeetle, but the link seems to be broken for me. Could you please verify

Thanks

Holy beetle, you’re right @shopov !
I immediately contacted my colleagues and we’ll get it fixed as soon as possible.
Thank you very much for warning us.

Hi @shopov,
Download link is fixed.
Awesome you warned us! The whole team thanks you :beetle_face:

Thank you for your quick response

I successfully downloaded the archive
By habit, I extracted it to ‘c:\tmp’ and I executed it from there. And it actually worked this time, even from ‘c:\tmp’. So unusual, but it works, well done!

This is a very interesting project. Do you mainly use python? It feels like that, spiced with a bit of Qt. It generally feels fresh and good, nicely done, looks promising. I used to do much embedded programming and debugging a few years ago, on stm32f103 and stm32f070 parts. I can’t find them in the ‘New Project’ options, maybe I am missing something. I don’t have much time right now, I will try some other day, you are doing a good job, guys!

Thank you

1 Like

Hi @shopov,
Thank you for your kind words.

The GUI of Embeetle is built in Python + PyQt. For the parser we use C++ to make it as fast as possible.

We worked about two years with three people on this project. Finally, we have an alpha version out. The number of microcontrollers we support is limited, because we’re focusing our energy on fixing and improving the IDE itself. But you’ll certainly see the list of supported microcontrollers grow over the coming months :wink:

If you have a specific microcontroller and/or board that you’d like to use, please let me know. I can buy it on Farnell or DigiKey and will add it to Embeetle. The STM32F103 you mentioned, is it this one:

https://be.farnell.com/stmicroelectronics/nucleo-f103rb/nucleo-board-mcu/dp/2394226

Hi @shopov,
Is this GitHub repo from you?

A debugger is exactly what is missing right now in Embeetle IDE. I think we have plenty of things to talk about :slight_smile:

Will you be at Embedded World 2020 in Nuremberg, Germany? We can give you a free ticket if you like. The conference starts on Tuesday next week.

Hi, @kristof

Yes, that would be me. At the moment, I am actively working on this hobby project of mine.

I started it a few years ago, because I wanted a lightweight debugger with a simple interface, to suit my needs. Actually, it is a very special case of a debugger, it is not a general purpose debugger.
It only targets bare metal C-programs (no C++ - this can be a huge limitation) running on ARM Cortex-M microcontrollers, it only supports executable (not relocatable) ELF files, with DWARF debug information, but the ELF/DWARF seems to have been the de-facto standard for many years now. The gcc, clang, IAR and Keil compilers all generate exactly such executable files.

The troll targets the Blackmagic probe. The blackmagic, I think, is awesome, I honestly think this is the best debug probe for ARM Cortex-M microcontrollers at the moment, the decision to provide an embedded gdbserver, and flashing algorithms, is simply awesome, in my opinion.

Please note, that when I started work on the troll, I was working as an embedded programmer. However, for about 3 years, my full time job has nothing to do with embedded systems. I did not do any work on the troll debugger for a long time, but a few months ago I decided to resume work on it. I love embedded systems, they are a hobby of mine, so I thought it woul be nice if I manage to complete the debugger, maybe it could be useful to someone else, too. I am far from finishing it though, but I like hacking on it when I can afford some of my spare time. I can not make any promises that I will be able to ever complete it. Still, if there is interest to discuss the technical details, I would be glad to have a discussion.

The established way to provide debugging in an IDE, I believe, is to write a MI (machine interface) to gdb. Virtually all Eclpise-based IDEs that I have tried, do this. Qt Creator does this as well, and it is a not so well advertized fact, that one can actually adjust the settings inside Qt creator to actually debug embedded systems, with the blackmagic. I remember this worked for older versions of Qt Creator out-of-the-box, but for recent versions, I think some hacking was necessary. However, for embedded systems, such systems have always felt somewhat lacking and imperfect to me, that is why I decided to give it a try with the troll. If you are interested, I will be glad to share my experience, if it can be of use to you.

Thank you for your invitation, I would be more than happy to visit your booth in Nuremberg, but I cannot attend the conference on such a short notice, I am too busy with other things at the moment. Nuremberg is a fine city, the old city center is beautiful, the Toy Museum is one of a kind, I visited the city in August last year. I wish you a nice time there.

1 Like

Actually, I spoke to my manager, and it turns out I can have next week off.
I have never visited Embedded World, so I thought it may be interesting.
I hope I can make it to Nuremberg by car.

Is the offer for the ticket still valid?

Thanks

1 Like

Hi @shopov,
That is wonderful news! Of course, the offer for a free ticket is still valid. We will send you one tomorrow.

Thank you very much for the description you made about troll. As I understand, you don’t use GDB, but you built a GDB-like program yourself and a GUI on top of that. Am I correct?

Did you avoid using GDB for a particular reason?

Hi @shopov,
With this link you should get a free visitor’s pass for Embedded World 2020:

https://www.messe-ticket.de/Nuernberg/embeddedworld2020/Register/BBE9F5ZMTSWM2M

If something goes wrong, please let us know.

Hi, @kristof

Yes, you are correct.
I wanted to avoid gdb, because at the time of starting the project (about 4 years) ago, it seemed to me that gdb was not so good with handling connections to embedded targets. Also, I thought that there are no nice stand-alone debuggers with a graphical user interface, I really don’t like Eclipse very much. Also, to me, understanding the gdb code in order to modify it, is very hard. I also thought about adding support for code coverage in the troll, but I never even started this. Code coverage is a desirable feature, but it needs some special handling from the debugger, in the context of embedded systems, or so it seemed to me. But maybe this is no longer true, gdb has support for semihosting, I believe that can be used to provide code coverage for embedded targets.

However, for these four years, actually much has changed. The gdb debugger is excellent, and it communicates very smoothly with the blackmagic probe. There is also python scripting in gdb, I have not used it, but I guess it is quite powerful. So, the project that I started seems obsolete now. Still, I am trying to complete a usable release, I like the simplistic user interface, and maybe others can find it useful too.

Thanks a lot!

Everything looks good, I successfully obtained a ticket.
I have never visited Embedded World, so I am curious to see what it is all about. Even though I don’t work professionally with embedded systems at the moment, I have always been fascinated about the things one can do with a tiny microcontroller, and I have always appreciated the fact, that one can actually be in total control of the embedded system. This is very unlike my current job, where I work on a tiny part of a huge software system, which I guess no one truly understands in its wholeness.

Thanks!

Hi @shopov,
I’m sorry for my late reply. I was getting some things ready for the conference.

We’re happy you’ll be at the conference! You can find us at booth:
Hall 4 / 4-682

You can also reach us on the phone:
+32(0)496 90 75 44

And of course through email:
- info@embeetle.com
- kristof.mulier@telenet.be

We hope to meet you at our exhibition stand. We’ve got many topics to talk about :slight_smile:

Hello!
When installing, it gives an error:

qt.qpa.plugin: Could not find the Qt platform plugin “xcb” in “”
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.