[fpc-devel] "embedded" again

Michael Schnell mschnell at lumino.de
Tue Jan 15 10:45:29 CET 2013


On 01/14/2013 08:31 PM, Paul Breneman wrote:
>
> This "embedded" thread you started recently has been great.  I've 
> tried to keep up with how you are using (or hoping to use) FPC on 
> headless embedded systems for years now.  Thanks, and please continue 
> to keep us in the feedback loop!
Hmm. Unfortunately I don't seem to be able yet to extract a usable 
result from this thread.

There are different ways to use FPC (and Lazarus) to design and test 
"embedded" projects for "headless" hardware.

Using a PC to do the biggest part of the software locally, as I 
described in my original post seems to be commonly agreed upon.

But how to debug and finetune the stuff in the device itself ?

The alternatives are
  a) cross compile using FPC and just run it (debugging via code 
instrumentation)
  b) install fpc on the Target and compile and just run it (debugging 
via code instrumentation)
  c) cross compile and remote debug using Lazarus
  d) install Lazarus and FPC on the Target, compile and debug.

Now the hardware in question in this thread is Thread is
  1) Raspberry Pi
  2) a small QNAP NAS
(To me BeagleBone is a very interesting board, as well, much more 
"professional" than RPi and with $70 not too expensive)
All three run Linux on a rather modern ARM.

So at least (a), (b) and (c) are supposed to be possible with these boards.
(d1) is verified using the hardware graphic of the device but nor 
recommended at least for the small version of the RPi due to it's very 
slow X performance.
(d1) might be possible and recommended with both when installing a 
remote X system such as NX. I did read a paper about how to install 
NXfree on RPi (needs configuring and compiling it from the sources) but 
I don't dare to try this on the QNAP (but I keep it in mind)
(d2) is only possible with NX (or a similar remoting software)

(c) seems the most appropriate way to allow for decent debugging 
performance, but seemingly nobody yet decently tried (or wrote 
instructions to) to get Lazarus running remote gdb via TCP/IP.

So I am still stuck here.


> I've used www.nomachine.com some with desktops but I'll have to use 
> what you linked on my RPi.  Then it might allow my RPi to be a simple 
> headless embedded system using the ARM Linux stuff here:
>   http://www.turbocontrol.com/easyfpgui.htm
>
Sorry, I don't get your meaning here. Did you try to install NX-Server 
on the RPi (as described in the appropriate paper) ? Did it work ? Did 
you try to try to install Lazarus on the RPi ? Did it work ?

Of course the "simple GIU" is a viable option for devices like RPi with 
limited resources but with Graphics hardware. It obviously is not 
sensible for devices like my QNAP that does not have any Graphics 
hardware at all.

In both cases I still think the optimum way to do the hardware specific 
software development is remote debugging.

Thanks for your comments.
-Michael



More information about the fpc-devel mailing list