Welcome! Log In Create A New Profile

Advanced

Booting Debian on Pogoplug Pro

Posted by bodhi 
Re: Booting Debian on Pogoplug Pro
August 08, 2013 04:46PM
Well, for the last issue there is an easy solution: Write them asking for the source code, if they don't want to provide it or don't answer hand the case over to the guys from http://gpl-violations.org/, I'm sure they will handle this properly.
Re: Booting Debian on Pogoplug Pro
August 08, 2013 06:30PM
Already wrote 2 mails to the Shuttle support. They ignored the request and I am pretty sure the support employees didn't even understand what it was about and didn't talk to someone who did.
I am honestly considering firing off a mail to gpl-violations. How else do they learn?

Edit:
And license violation reported to gpl-violations.org. Let's see if Shuttle will comply once they realize what mess they are in.



Edited 1 time(s). Last edit at 08/09/2013 12:55PM by ingmar_k.
Re: Booting Debian on Pogoplug Pro
August 17, 2013 02:44PM
OK, I gave it a new try. The sources are available here:
https://github.com/ingmar-k/OXNAS_Kernel_2.6.32.61.git

They are fully untested at the moment however. And I'll need people testing and/or contributing to make it work. ;-)

Edit: Still working on it. Doing some compile tests at the moment.

Edit_2: With the newly included defconfig for the Pogoplug V3 Classic I could compile a uImage and modules. Don't know yet if it would boot. Will have to get some sleep now. :-D

Edit_3:
No success so far. :-( Next step would be kgdb I guess. Or does someone here have another idea? Any help is welcome.

CE>> run load_custom_nand2 boot

Loading from device 0: 128MiB 3,3V 8-bit (offset 0xb00000)
   -- Using 1bit ECC style encoding
   Image Name:   Linux-2.6.32.61-test-1.0
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2445288 Bytes =  2.3 MB
   Load Address: 60008000
   Entry Point:  60008000
## Booting image at 60500000 ...
   Image Name:   Linux-2.6.32.61-test-1.0
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    2445288 Bytes =  2.3 MB
   Load Address: 60008000
   Entry Point:  60008000
   Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux......................................................................................................................................................... done, booting the kernel.

Unfortunately that's it so far. Same message (or lack of one) as with my first attempt. So I guess the same thing is wrong again.

Edit 4:
Applied the KGDB patch that I found and updated the repo again, with an additional debugging defconfig.
Could compile it without problems. But never used KGDB before. So we'll see how that goes.

Edit 5:
Doesn't even seem to get as far as to start KGDB over serial. :-/ I'm out of ideas at the moment.



Edited 7 time(s). Last edit at 08/19/2013 03:04PM by ingmar_k.
Re: Booting Debian on Pogoplug Pro
August 22, 2013 06:06AM
OK, so I just deleted the 2.6.32.61 github repo, because this seemed to be a dead end.

BUT, I have this kernel here for a Pogoplug V3 Classic:
http://www.hs-augsburg.de/~ingmar_k/Pogoplug_V3/kernels/2.6.32-00-OXNAS-wheezy-fake-1.0.tar.bz2

It is based on the most recent Medion/Zyxel kernel sources, plus some patches for devtmpfs and accept4. And guess what, it seems to work with wheezy just fine! :-D
I also "faked" the version number. The sources were 2.6.31.14, so I just changed it to 2.6.32.00, to make udev believe it to be compatible.
Please would someones else give it a try?
I'll create a new git repo with the source, soon.
Edit:
Oh, and it is compiled with the Raspberry Pi ARMv6 cross compiler. So it is optimized for all the ARMv6 features.



Edited 1 time(s). Last edit at 08/22/2013 08:37AM by ingmar_k.
shv
Re: Booting Debian on Pogoplug Pro
August 22, 2013 10:53AM
Can you please provide the patch files for your changes to the Medion/Zyxel sources?
Re: Booting Debian on Pogoplug Pro
August 22, 2013 12:41PM
The complete sources, including patches, are available here, now:
https://github.com/ingmar-k/2.6.31.14_OXNAS_kernel
mk2k
Re: Booting Debian on Pogoplug Pro
August 31, 2013 01:05PM
bodhi Wrote:
-------------------------------------------------------
> @sxk,
> > I guess it
> > is not even coming to sysvinit.
> >
>
> I think you're right, the LED indicated that you
> have not got to the point where the system is
> loading rootfs. So as shv mentioned above,
> make sure the partition on USB is ext3, active,
> and labeled "rootfs".
>
> You have a newer ALARM kernel, my kernel is
> Linux PogoPro 2.6.31.6_SMP_820 #99 SMP Sun May 29
> 03:04:43 EDT 2011 armv6l
>
> Varkey created that roofts about the time we all
> worked on this. The new kernel might have problem
> using it. My suggestions:
>
> - Perhaps you can use shv rootfs.
> or
> - Do the manual installation on a Debian roofts,
> as described in the 1st post.
>
> @chessplayer,
> I think at that time we will see the LED already
> solid green. My guess the problem is earlier.
>
> @shv,
> I recalled you've posted link to download your
> PogoPro Debian rootfs, but don't remember where?

I had archlinux running on my pogoplug b04 oxnas. Now the usb thumdrive died, since support for arch is gone I wanted to give debian a try and extracted the varkey rootfs tar file on a formatted ext3 partition with label rootfs and set to active. The pogoplug blinks and after a few seconds gives a solid green led, but I can't find it in the the network on my router. I don't have a serial cable so can't see how it boots. Any ideas?
Re: Booting Debian on Pogoplug Pro
August 31, 2013 03:47PM
mk2k,

If the LED is solid green, it means uBoot has done booting the uImage. But for some reason the the rootfs did not loaded correctly. If you can find Debian rootfs with kernel 2.6.3x, you can put that on a USB stick and follow the manual procedure in the first post, while in Arch.

Also it's good to verify which ALARM kernel version you are using, see if it is the same one we used (I recalled it was updated once).

-bodhi
===========================
Forum Wiki
bodhi's corner



Edited 1 time(s). Last edit at 08/31/2013 03:49PM by bodhi.
shv
Re: Booting Debian on Pogoplug Pro
September 01, 2013 12:22AM
Please check first if the partition name is "rootfs". If it doesn't boot you might have the latest kernel of WarheadsSE. In this case you could try my Debian rootfs which fits to that kernel: Link. You should install the resolvconf package if it is running to prevent problems with DNS configuration if DHCP is used. If you can login to the Pogoplug but don't have access to the internet you can change the DNS server in resolv.conf manually. Please check the content of sources.list. It shall look like this:
deb http://ftp.fi.debian.org/debian squeeze main contrib non-free
deb http://ftp.debian.org/debian/ squeeze-updates main contrib non-free
deb http://security.debian.org/ squeeze/updates main contrib non-free



Edited 1 time(s). Last edit at 09/01/2013 12:23AM by shv.
mk2k
Re: Booting Debian on Pogoplug Pro
September 01, 2013 02:25AM
Sorry, I needed to wait for my router's dhcp table to refresh. After 15min or so it appeared and I now have SSH access to my pogo with debian.

Thanks.
Ubaid
Re: Booting Debian on Pogoplug Pro
September 02, 2013 05:13PM
I followed instructions to install debian on pogoplug V3 but when I SSH into it. It doesnt accept default user password. How to fix it?
Re: Booting Debian on Pogoplug Pro
September 02, 2013 07:12PM
Ubaid Wrote:
-------------------------------------------------------
> I followed instructions to install debian on
> pogoplug V3 but when I SSH into it. It doesnt
> accept default user password. How to fix it?

More info needed! How did you install Debian? all manual steps or use varkey rootfs? if you used varkey's rootfs, did you use user/pass root/root? ....

-bodhi
===========================
Forum Wiki
bodhi's corner
phr34k13
Re: Booting Debian on Pogoplug Pro
September 14, 2013 04:06AM
Re: Booting Debian on Pogoplug Pro
September 14, 2013 03:24PM
I can read Chinese. This is the tutorial to install kernel 3.1.10 on NAND so that you can boot Debian 7.1 from USB.

Mine is still using Linux-2.6.31.6_SMP_820 kernel. How safe it is to install kernel on NAND?

Let me know if you have any question.



Edited 1 time(s). Last edit at 09/14/2013 03:25PM by purespin.
Re: Booting Debian on Pogoplug Pro
September 15, 2013 04:03PM
purespin Wrote:
-------------------------------------------------------
> I can read Chinese. This is the tutorial to
> install kernel 3.1.10 on NAND so that you can boot
> Debian 7.1 from USB.
>
> Mine is still using Linux-2.6.31.6_SMP_820 kernel.
> How safe it is to install kernel on NAND?
>
> Let me know if you have any question.

Can you translate that page? Google does not seem to work for me, I got a blank page :)

-bodhi
===========================
Forum Wiki
bodhi's corner
Re: Booting Debian on Pogoplug Pro
September 15, 2013 05:36PM
It probably just describes the procedure of flashing a uImage to the backup/secondary kernel area of NAND, at the 0xB00000 address. And also the command to explictly boot that secondary/backup uImage, instead of the primary/main uImage.
That should be all. I don't know chinese, but the commands look very familiar.

Like here (section "Flashing and testing a new kernel"):
https://github.com/ingmar-k/Pogoplug_V3_Emdebian/blob/master/README.md

Debian wheezy can be booted with a modified kernel 2.6.31.14, too.
https://github.com/ingmar-k/2.6.31.14_OXNAS_kernel

Some more testing is needed, but the "older" kernel has the big advantage of MUCH higher data transfer speeds for SATA and USB. ;-)



Edited 2 time(s). Last edit at 09/15/2013 05:37PM by ingmar_k.
Re: Booting Debian on Pogoplug Pro
September 15, 2013 06:31PM
Here is what I got from Google translate:

Quote
Google
Debian 7.1 wheezy for PogoPlug Pro

Last edited by CEC0D5F1B6AB at 2013-6-22 20:24 Edit


Debian 7.1 uses the lintel of the linux kernel: Linux version 3.1.10
If you are using sata start it with 3.1.10 kernel , then directly use this rootfs to replace the original rootfs, I do not have extra sata hard drive, so I didn't test this (sata)!

If you use Linux-2.6.31.6_SMP_820 kernel, then you need to flash 3.1.10 kernel, and some friends fear flash brick, in fact, there are two nand kernel can put the place

0x500000 and 0xB00000, can put us in a second region kernel, so that is a dual-core


can be used via the following command to clear the core area of 22 (this is wrong. 22 should be the size as mentioned by someone in the post) to be behind the flash into the kernel version (in the native system test)


/ usr / sbin / flash_erase / dev/mtd1 0xB00000 22


/ usr / sbin / nandwrite-p-s 0xB00000 / dev/mtd1 / root / uImage

wait for the write is complete reboot into uboot, I put the related environment variable output in the following

load_nand = nboot 60500000 0 200000
load_nand2 = nboot 60500000 0 800000

load_custom_nand = nboot 60500000 0 500000
load_custom_nand2 = nboot 60500000 0 B00000
boot_custom = run load_custom_nand boot | | run load_custom_nand2 boot
bootcmd = run load_custom_nand2 boot

If you look at the kernel, then run nboot 60500000 0 500000

Then output

CE >> nboot 60500000 0 500000
Loading from device 0: 128MiB 3,3 V 8-bit (offset 0x500000) - Using 1bit ECC encoding Style Image Name: Linux-2.6.31.6_SMP_820 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 2,345,664 Bytes = 2.2 MB Load Address: 60008000 Entry Point: 60.008 million
CE >> nboot 60500000 0 B00000


Loading from device 0: 128MiB 3,3 V 8-bit (offset 0xb00000)
- Using 1bit ECC encoding Style
Image Name: Linux- 3.1.10
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 2,814,536 Bytes = 2.7 MB
Load Address: 60008000
Entry Point: 60,008,000

above the red mark that is selected automatically start the kernel
bootcmd = run load_custom_nand boot // using the first kernel
bootcmd = run load_custom_nand2 boot // using the second core

can be used to set setenv set

next bootargs bootargs = root = / dev/sda1 ubi.mtd = 2,512 rootfstype = ext3 console = ttyS0, 115200 Elevator = cfq mac_adr = 0x00, 0x25, 0x31, 0x00, 0xd4, 0x6f rootwait mem = 128M poweroutage = yes

above is to use / dev/sda1 as rootfs

set after startup with kernel 3.1.10 and the like do u disk rootfs ext3 formatted into the u disk format, and then put the following extract the rootfs to the root directory, and then plug in the pogoplug boot it.

In case you run into any problem, you need to have the spirit to debug/troubleshoot it.

Debian7 info:
Username: root
Password: admin

You can download from:
http://pan.baidu.com/share/link?shareid=129193089&uk=3272170520
Re: Booting Debian on Pogoplug Pro
September 16, 2013 12:25AM
Finally I followed the tutorial and successfully installed Debian 7.1. Everything goes very smoothly.

Let me know if you need to download any files from that baidu.com link.
Re: Booting Debian on Pogoplug Pro
September 21, 2013 07:39AM
I've got a interesting problem at the moment.

I got the patched 2.6.31.14 Medion kernel to work with wheezy, as stated before.

Problem is:
The module loading of the gmac ethernet module takes AGES, thus some debian init processes (procps, networking, ssh) fail, due to the delay. If run later on, all he inits work perfectly fine.
I'm experimenting with building in the gmac support and firmware at the moment.

Any other ideas/suggestions in the meantime?

Edit:
Compiling the network parts into the kernel did nothing to improve the situation. Next I'll maybe try a custom init script that just waits a few seconds and gets run before the ones that fail. Perhaps that could work.

Edit2:
Fix for the problem is to change the file "/etc/init.d/rc". The entry "CONCURRENCY=makefile" needs to be changed to "CONCURRENCY="none".
With that setting, the boot process doesn't run init scripts in parallel and then it works like it is supposed to in wheezy. :-)

Edit 3:
And now finally I have what I wanted. The kernel now supports wheezy and has included ZRAM support, too. Sources are available via github. A fitting ARMv6k compiler will also be available there soon, too. This can produce code exactly optimized for 'mpcorenovfp'. ;)

Edit 4:
Some testers would be great.
Kernel for Pogoplug V3 Classic:
http://www.hs-augsburg.de/~ingmar_k/Pogoplug_V3/kernels/2.6.32-ppv3-classic-zram-1.1_ARMv6k.tar.bz2

Kernel for Pogoplug V3 Pro:
http://www.hs-augsburg.de/~ingmar_k/Pogoplug_V3/kernels/2.6.32-ppv3-pro-zram-1.0_ARMv6k.tar.bz2

Sources are available via github, as always. The kernels are explicitly compiled for ARMv6k, but they work (of course) with standard ARMv5 distributions.

Also quite interesting. Someone seems to be working on a 3.1.11 kernel for OXNAS-devices, again:
https://github.com/kref/linux-oxnas



Edited 7 time(s). Last edit at 09/26/2013 02:16PM by ingmar_k.
peternguy3n
Re: Booting Debian on Pogoplug Pro
October 28, 2013 07:02PM
Shv,

Do you happen to have a pre-made rootfs for Wheezy, similar to the one you made for Squeeze?

Thanks
Re: Booting Debian on Pogoplug Pro
October 30, 2013 11:06AM
Just added an option for directly booting from SATA to my Debian/Emdebian scripts:
https://github.com/ingmar-k/Pogoplug_V3_Emdebian_Debian
shv
Re: Booting Debian on Pogoplug Pro
November 01, 2013 05:18AM
peternguy3n Wrote:
-------------------------------------------------------
> Do you happen to have a pre-made rootfs for
> Wheezy, similar to the one you made for Squeeze?

You can download a Wheezy rootfs for Pogoplug V3/Pro from Uploaded (md5: 50f0b5cfa27bdea8b7ba55dd46a2330d). It fits to the latest 2.6.31.6 Kernel from WarheadsSE.The solution is based on libaccept4 preload mechanism. Totgether with the hint from Ingmar_k ("/etc/init.d/rc". The entry "CONCURRENCY=makefile" needs to be changed to "CONCURRENCY="none") it is working very well.

This rootfs image fit to the following kernel in the flash:
uname -a
Linux debian 2.6.31.6_SMP_820 #7 SMP Thu Jun 14 20:31:06 CDT 2012 armv6l GNU/Linux

Alternative download for my Wheezy rootfs: http://pogoplug.square7.de/forum/viewtopic.php?f=5&t=114

Just extract it to an ext3 formatted disk. The partition name must be rootfs! After extracting update your correct ethernet MAC address in /etc/network/interfaces. Also regenerate your SSH keys once you are logged it to the debian system as given here -- http://www.cyberciti.biz/faq/howto-regenerate-openssh-host-keys/

The default login is root / root

The rootfs already contains a working driver for the WLAN module. You can find configuration hints for the wireless network with Debian in the following post: http://archlinuxarm.org/forum/viewtopic.php?f=29&t=2031&start=100#p25865.

- shv



Edited 10 time(s). Last edit at 03/11/2017 09:32AM by shv.
peternguy3n
Re: Booting Debian on Pogoplug Pro
November 01, 2013 03:22PM
shv Wrote:
-------------------------------------------------------
> peternguy3n Wrote:
> --------------------------------------------------
> -----
> > Shv,
> >
> > Do you happen to have a pre-made rootfs for
> > Wheezy, similar to the one you made for Squeeze?
>
> >
> > Thanks
>
> You can download a Wheezy rootfs for Pogoplug
> V3/Pro from
> http://clou
> dzer.net/file/hduuzhen
(md5:
> 50f0b5cfa27bdea8b7ba55dd46a2330d). It fits to the
> latest 2.6.31.6 Kernel from WarheadsSE.The
> solution is based on libaccept4 preload mechanism.
> Totgether with the hint from Ingmar_k
> ("/etc/init.d/rc". The entry
> "CONCURRENCY=makefile" needs to be changed to
> "CONCURRENCY="none") it is working very well.
>
> - shv

Thank you!
peternguy3n
Re: Booting Debian on Pogoplug Pro
November 04, 2013 12:15AM
ingmar_k Wrote:
-------------------------------------------------------
> I've got a interesting problem at the moment.
>
> I got the patched 2.6.31.14 Medion kernel to work
> with wheezy, as stated before.
>
> Problem is:
> The module loading of the gmac ethernet module
> takes AGES, thus some debian init processes
> (procps, networking, ssh) fail, due to the delay.
> If run later on, all he inits work perfectly
> fine.
> I'm experimenting with building in the gmac
> support and firmware at the moment.
>
> Any other ideas/suggestions in the meantime?
>
> Edit:
> Compiling the network parts into the kernel did
> nothing to improve the situation. Next I'll maybe
> try a custom init script that just waits a few
> seconds and gets run before the ones that fail.
> Perhaps that could work.
>
> Edit2:
> Fix for the problem is to change the file
> "/etc/init.d/rc". The entry "CONCURRENCY=makefile"
> needs to be changed to "CONCURRENCY="none".
> With that setting, the boot process doesn't run
> init scripts in parallel and then it works like it
> is supposed to in wheezy. :-)
>
> Edit 3:
> And now finally I have what I wanted. The kernel
> now supports wheezy and has included ZRAM support,
> too. Sources are available via github. A fitting
> ARMv6k compiler will also be available there soon,
> too. This can produce code exactly optimized for
> 'mpcorenovfp'. ;)
>
> Edit 4:
> Some testers would be great.
> Kernel for Pogoplug V3 Classic:
> http://www.hs-augsburg.de/~ingmar_k/Pogoplug_ > V3/kernels/2.6.32-ppv3-classic-zram-1.1_ARMv6k.tar > .bz2
>
> Kernel for Pogoplug V3 Pro:
> http://www.hs-augsburg.de/~ingmar_k/Pogoplug_ > V3/kernels/2.6.32-ppv3-pro-zram-1.0_ARMv6k.tar.bz2 >
>
> Sources are available via github, as always. The
> kernels are explicitly compiled for ARMv6k, but
> they work (of course) with standard ARMv5
> distributions.
>
> Also quite interesting. Someone seems to be
> working on a 3.1.11 kernel for OXNAS-devices,
> again:
> https://github.com/kref/linux-oxnas

How do I go about testing/installing your kernel for the Pogoplug Pro? I downloaded the bzip2 file but not sure where to go from there. I am running Wheezy.
Re: Booting Debian on Pogoplug Pro
November 04, 2013 04:20AM
As I already wrote on the Arch Linux forums:
The easiest way is direct SATA booting using my Emdebian/debian scripts.
So in short you take a SATA drive and create a new Emdebian or Debian install on it, using my installer scripts and the corresponding settings. Then you connect that harddrive to the internal SATA port of the Pogoplug.
shv
Re: Booting Debian on Pogoplug Pro
November 06, 2013 01:06PM
@peternguy3n:

It makes the thread difficult to read if you are using full quotes where this is not necessary.

  1. If you answer directly to a post where are no messages after the post you regard you don't need any quote of the previous post.
  2. If you wan't to reference a post of certain user you can use his name in your message and put a link to his post you wan't to reference.
  3. In case of using quotes please make them as short as possible with just the text which you directly answering.

Can you please change your last 2 messages above and replace the full quotes with short or no references as I described?

I was not able to send these hints to you via PN. Maybe you disabled the reception of PN from users.

- shv



Edited 2 time(s). Last edit at 11/11/2013 01:10AM by shv.
Re: Booting Debian on Pogoplug Pro
November 07, 2013 12:39PM
ingmar_k Wrote:
-------------------------------------------------------
> As I already wrote on the Arch Linux forums:
> The easiest way is direct SATA booting using my
> Emdebian/debian scripts.
> So in short you take a SATA drive and create a new
> Emdebian or Debian install on it, using my
> installer scripts and the corresponding settings.
> Then you connect that harddrive to the internal
> SATA port of the Pogoplug.

I tried working through your instructions for creating a SATA boot drive for the pogopro but you kind of hand-wave over the issue of wheezy not having the right kernel. When trying to use your script to install squeeze instead, it errors out. I have SATA booting working thanks to the simple script from the Arch forums, but am interested in getting it running Debian Squeeze (since package support is still decent) or some other reliable platform.
Re: Booting Debian on Pogoplug Pro
November 07, 2013 02:37PM
joebob2000 Wrote:
-------------------------------------------------------
> I tried working through your instructions for
> creating a SATA boot drive for the pogopro but you
> kind of hand-wave over the issue of wheezy not
> having the right kernel.
>...

Now let me think, why would I do that...? Hmm....
Maybe because it just works, if you use the kernels that I provide? ;-)

And concerning your problem with squeeze:
Besides the fact that it doesn't really make sense to still use squeeze, could you be a bit more specific as to what "errors out"?



Edited 1 time(s). Last edit at 11/07/2013 03:30PM by ingmar_k.
SCrid2000
Re: Booting Debian on Pogoplug Pro
November 09, 2013 06:53PM
ingmar_k Wrote:
-------------------------------------------------------

> Edit 4:
> Some testers would be great.
> Kernel for Pogoplug V3 Classic:
> http://www.hs-augsburg.de/~ingmar_k/Pogoplug_ > V3/kernels/2.6.32-ppv3-classic-zram-1.1_ARMv6k.tar > .bz2
>
> Kernel for Pogoplug V3 Pro:
> http://www.hs-augsburg.de/~ingmar_k/Pogoplug_ > V3/kernels/2.6.32-ppv3-pro-zram-1.0_ARMv6k.tar.bz2 >

Installed the Pogoplug Pro Kernel onto my Pogoplug using the instruction on your github, get a solid green light but no ethernet connection using your endebian build or the rootfs posted by shv (or Arch or squeeze) (and yes, I edited the interfaces file to my actual mac address, as well as the mac_addr file) :( can anyone advise me what to do from here?
Re: Booting Debian on Pogoplug Pro
November 09, 2013 08:26PM
I'm sorry to write the following, but if you had truly read the instructions, you would have realized that a serial connection to the device is nearly indispensable. Especially when changing something kernel related.
And from what you wrote I guess you don't have a serial connection set up, yet. Right?
Besides that the device can still be booted via SATA.

Oh and BTW, let me guess: You tried to use the kernel images with a root drive that uses a EXT3 filesystem? This can't work and has been explained before.

Edit:
What I also don't understand: I explicitly write in my instructions to first flash the second/backup kernel location and test that uImage BEFORE flashing the main kernel location. But so far, there don't seem to be too many people who really followed those instructions. I don't get it.



Edited 2 time(s). Last edit at 11/10/2013 07:07AM by ingmar_k.
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: