Mobotix M16 http api get image pops login request

Newbie to using Mobotix M16 cameras but used plenty of IP based camera before.

I want to get an image from the camera using http command. I can do that with


except that it requests I login into the camera. Usually the username and password can be added to the above command (done that on other cameras) so that popup is bypassed but I cannot seem to find any documentation on that for the M16.

At this stage I am doing this simply via a browser but eventually want to do it via software - done that already for a variety of cameras and have the appropriate line(s) in a configuration file for the software to read and then request an image from the camera.

Can anyone enlighten me?



Hello George,

to do that you need to give the username and password before the ip address of the camera.


Hi Mx-MichaelS,

That works except that whenever that command is used the first time (doesn’t matter if it is in the browser of python, or whether the username and password is included) it produces a screen full of garbage which in the python script causes it to crash. See part below. It seems on the first use of the http api command to get an image it tries to feed it back as text.

Any ideas how to stop that?


ÿØÿàJFIFÿánExifII*~†nv(1 Œi‡šHHMOBOTIXM16AMX-V5.2.3.30 š‚L"ˆ0210$8‘ 0100 ÿÿ 1¤T2019:12:09 20:24:142019:12:09 20:24:14{@B00:03:C5:19:AC:94ÿþÞ#:M1IMG SECTION FINGERPRINT VER=1.0 PRD=MOBOTIX FRM=1762905 DAT=2019-12-10 TIM=09:24:14.482 TZN=NZDT TIT=1575923054.482 TIU=482194 ENO=0 IMT=IMAGE ENDSECTION FINGERPRINT SECTION IMAGE CTY=DUAL FRJ=0 FRB=169 FRL=0 XTO=1024 YTO=768 QLT=60 CAM=RIGHT CHN=IMGPROF DPM=SIMPLE,SIMPLE WIN=lt=0,0:rb=1023,767:cam=0:flags=fp:v=137:usx=323:usy=323:isr=18 YPR=0:0:0,0:0:0 CMX=60398,60398 CMY=40265,40265 SNR=8103502,8102746 ZOM=1000,0 PAX=0,0 PAY=0,0 SBX=s1b1,s1b1 SBY=s1b1,s1b1 FSX=65536,65536 FSY=65536,65536 PSR=0,0 MIR=NONE,NONE ROT=0,0 ACT=AUTO,OFF SRP=4,4 BRT=0,0 BLT=4,4 CSA=0,-10 BBL=0,0 RBL=0,0 NOI=77,-1 NSM=LOWpsd,LOW EXW=100,0 WBW=TOTAL,0 AVB=398,0 AMB=199,0 ACC=0>0 0>0 ACU=0>0 0>0 EXB=5,0 GNG=7120,0 GNR=12608,0 GNB=14560,0 GN2=7088,0 CUG=0,0 CUR=0,0 CUB=0,0 CU2=0,0 CNG=0,0 CNR=0,0 CNB=0,0 CN2=0,0 BLG=151,0 BLR=152,0 BLB=152,0 BL2=152,0 BMG=151,0 BMR=153,0 BMB=152,0 BM2=152,0 CCG=1632,0 CCR=1632,0 CCB=1632,0 CC2=1632,0 WBG=1632,0 WBR=1632,0 WBB=1632,0 WB2=1632,0 WBL=100,0 GDG=1024,0 GDR=1024,0 GDB=1024,0 GD2=1024,0 EXC=0,0 EXI=80,0 EXA=160000,0 EXP=6523,0 ICL=.c.k, ICR=0,0 ICE=0,0 ICS=1,0 ENDSECTION IMAGE SECTION ID MAC=00:03:C5:19:AC:94 NAM=mx10-25-172-148 ET0= SWV=MX-V5.2.3.30 UPT=106429 TSI= TSP=NONE PTS=1575252862 NTS=0 BTM=2 CFL=M16A TYP=3 BRD=6.2 CLK=996 ENDSECTION ID SECTION SENSORS MIC=0 LXR=1043 ILR=404 TIN=216 TOU=287 ENDSECTION SENSORS ÿþMXF‚”¬Û-K™Yæ˜{ôfP

f8fìf ¢ yÍÿÚÿ}#

­&È}# è

üü ¢ yÍÿÚÿ}#èÿÛC ‘‑ .)10.)-,3:J>36F7,-@WAFLNRSR2>ZaZP`JQROÿÛC&&O5-5OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOÿÀ"ÿÄ­ ÿĵ}!1AQa"q2‘¡#B±ÁRÑð$3br‚ %&’()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyzƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ­ ÿĵw!1AQaq"2B‘¡±Á #3RðbrÑ $4á%ñ&’()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz‚ƒ„…†‡ˆ‰Š’“”•–—˜™š¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖ×ØÙÚâãäåæçèéêòóôõö÷øùúÿÚ

?ØÔõ 5á(žßTÝ7Ù­Ú4s¨D|òÀ®HÜ Òêz†œ?á(žßTß/ÙCtÄª­<°+’yê Rb5MCM_øJ&ƒTß7ÙGhÑŒADhùå\;¸A¬ËÃyÿh…¦›s˜•¾d–ôëÇ­JÄ&çÇJ†Îé½Ò“SV×"“þ?*K$ŠI¢K”“çwò£Ú çÜÎ9áGjÉÕµH ÷ˆ&}R 4ɬ<»+µ+.Èöí‡$© ŸáëÅU×ï>Éaå’úéþQì½ë‘Í4;íU´{{þ&Q¼Úlƒþ& qIò%ºò­œá‰àäô¨ïõH÷]—ûFÓ¦°òôûu¹WÄ›#r§v„c«‰Zz6ÇWÏÝäQ:kP’ãJÑí´e’B—q­Ú“ûÅÙ¼g‘×ãÓ¥L.£{ Ú;„i#†é¥‰_•Ì©´°íÆqøÖCml6>FÃ¥%¬‚ ´o^¿J”Àëu½RÂ}?S†ÛS´‡PŠÝVîóËùe^wDÓ~08¨Èùy˜ "´@ÿjV)­.›N aÛ

˜” $’% ªÇšC@ ­ SZ³–­þúÞÞÚHaž9$ÌHpNypç­N¢¨Ó 3S¼)æØE®F¶ÿ~ògÕUžVç÷q©|Æ£ø°n€b­jÚ¼]ëé±^ùì±ØÚÇp%"Aà„ ûµ ¿q;‑* J~§uçÿeZýºgaijķ-“ûÄÙ¼g‘÷°‑•¥<Ò~4»®j–+öÛ[Yÿ{<¶ŸgO´,ž›ÂB 1(@I$

–>‚ ÔuX¾Éy­Ú®eµ[¥Ø›`߶ ?r6$÷ÏQÀ¨4~?Z.s$cìp§Ù·<2I’ïKJpÀ ËŒ(çןÀÒê¾LcTµ¸’yî‑KØßÈÚÜCA¸cœzži¸¤ W·ÖcN̺֭ƒÏšÕmâ}›ŸiUŸ¼ä¹9ƃÍT¹xÇØáO³ox¤y?zZS†n\aG’œóø) XÕ.c’-"µÛy‘E2Ë N›”±B™@s¡ŽqÇ9äÓ¯o쿳µŸÞ]ÁçMj¶ñ>ÍÍ´ª„OÞdƒ·'8Àbpyªi RuüiÞ¼}i’?—ý(ù’_'û½jq±sýÄûÞÀTVñíÏûU™â{ß"ÈZ’ß›ïû íøÐDZÎjš‰¿Ô&—?(ùPz(è°úÕbH“ž¦§=ê!©B†¥Þ€4ôù7Û4óÌþ‡ÿ¯š{Š¥eÅt¿Ýo•¾‡ÿ¯ŠÒ‘qþzT0f¤‹5ªÿß T¤M›¸û½}ét¹6Êðÿ{§×üÿ!V/“ûÝ cÛþï1gýKmü;~˜­?­S¸]—)'üô¹#úÕˆ=ꐉéš)zÕp¥RQøS4ï/§OÇŸçLÔ[a>?ãÙħýލú XÎ{ñþ°¡NíãänÜ­þµ ÇùïSFØÅPÓÎ-|™>ý»›ßoCøŒ­Æ®!¤À¸§3}j5bøöéþ#fTö¨ÁÛøR9íQ^Û}·Oº´ÿžÑm_÷‡+úOqþ}iêØǵ!œ/‡eÿH–ßþz.GáÛò&º öMykþЕ‑òýkžÔ£þÊñD¼~ëÍóýÆù¿“[Q2ÛkVLÄߏOÖžào‘žßýzùö¥¦š‘‡ù4†”ÓhÃÇz}4ó@ˆÚ

Trying this again using my Raspberry pi system and sending the command (obviously username, password and IP address are all real values)


I get the response

Invalid URL: Non Numeric port: ‘password@ip-address-of-camera’

which suggests it is trying use the ‘password@…’ as the ip address

Any ideas



Back trying to do this as it has been on hold until now.

Trying now this just pops up the Login screen. It obviously talks to the camera at the correct IP but ignores the username:password part completely. I have tried using an admin group user as well as a www-guest user both with same result.

Is there another setting in the camera that I need to address to allow this to work? I have tried putting the username:password in quotes, single, double and each separately but nothing works.