{"id":65,"date":"2017-04-20T21:20:19","date_gmt":"2017-04-21T01:20:19","guid":{"rendered":"http:\/\/www.hackspot.net\/StuartCam\/?p=65"},"modified":"2017-04-20T23:58:09","modified_gmt":"2017-04-21T03:58:09","slug":"an-initial-look-at-the-system","status":"publish","type":"post","link":"http:\/\/www.hackspot.net\/StuartCam\/2017\/04\/20\/an-initial-look-at-the-system\/","title":{"rendered":"An initial look at the system"},"content":{"rendered":"<h3>Similar products<\/h3>\n<p>This camera is manufactured by <a href=\"https:\/\/www.tendinsights.com\">Tend Insights<\/a>. \u00a0They seem to have several other products, some of which look physically similar to this one.<\/p>\n<p>Looking at the kernel header, I found the string &#8220;Imogen-X860-I&#8221;. \u00a0Googling for that found <a href=\"http:\/\/www.imogenstudio.com\">imogenstudio<\/a>, which also sells cameras, some of which look <a href=\"http:\/\/www.imogenstudio.com\/cam.php\">physically similar<\/a> to the Stuart Cam. \u00a0Here&#8217;s a link to the <a href=\"https:\/\/imogenstudio.zendesk.com\/hc\/en-us\/article_attachments\/201650199\/_Cam_Quick_Start_Guide_FINAL_12_20_12.pdf\">quick start guide<\/a> for their CAM+ product, which shows a similar &#8220;setup&#8221; switch on the back with 3 vertically-oriented LEDs.<\/p>\n<p>The imogenstudio CAM+ product uses an app by <a href=\"http:\/\/www.isecurityplus.com\">iSecurity+<\/a>, which also seems to sell a camera, and references the name &#8220;<a href=\"https:\/\/www.seedonk.com\">Seedonk<\/a> camera&#8221;.<\/p>\n<p>The Stuart Cam&#8217;s firmware has the string &#8220;Seedonk&#8221; throughout, and firmware updates for the Stuart Cam come from app.isecurityplus.com\/seedonk.<\/p>\n<p>I&#8217;ve seen references to other brand (including Belkin) in the firmware. \u00a0Here&#8217;s a <a href=\"http:\/\/cache-www.belkin.com\/support\/dl\/MAN_F7D6701V1_8820-01175_RevB00.pdf\">user guide<\/a> for a Belkin Netcam which looks very similar to the Stuart Cam.<\/p>\n<p>So, it&#8217;s unclear who really makes the camera\/software. \u00a0I suspect that anything we find here on the Stuart Cam could apply to others.<\/p>\n<h3>Hardware<\/h3>\n<p>The SoC is an infoTMIC IMAPX860 which (according to Linux) is a dual-core ARMv7 CPU. \u00a0Linux&#8217;s &#8220;machine&#8221; name for this chip is &#8220;iMAPx15&#8221;.<\/p>\n<p>I did some Googling for this SoC and found that it&#8217;s used in cheapo Android tablets.<\/p>\n<p>The system boots from a 32-megabyte SPI flash chip. \u00a0There are\u00a0256-megabytes of RAM.<\/p>\n<p>I see an empty space\/solder pads that looks like an SD card socket could be added. \u00a0Maybe one of the other varieties of this camera includes a memory card slot.<\/p>\n<p>Wifi is provided by a Broadcom (now Cypress) BCM43438 chip (<a href=\"http:\/\/www.cypress.com\/file\/298076\/download\">datasheet<\/a>). \u00a0This chip supports 2.4GHz 802.11 b\/g\/n Wifi, Bluetooth 4.1, and an FM receiver (although I see no indication (so far) that this camera has enabled anything other than Wifi)<\/p>\n<p>The camera module is based on the Micron MT9D111 sensor (<a href=\"http:\/\/www.uctronics.com\/download\/cam_module\/MT9D111_SOC2010DS.pdf\">datasheet<\/a>). \u00a0The datasheet says it&#8217;s 1600&#215;1200 pixels (UXGA).<\/p>\n<h3>SPI flash memory layout<\/h3>\n<p>Here&#8217;s the SPI flash partitioning used by Linux:<\/p>\n<pre>0x000000000000-0x000000080000 : \"boot\"\r\n0x000000080000-0x000000090000 : \"oem\"\r\n0x000000090000-0x0000000a0000 : \"config\"\r\n0x0000000a0000-0x000000aa0000 : \"kernel0\"\r\n0x000000aa0000-0x0000014a0000 : \"kernel1\"\r\n0x0000014a0000-0x000001520000 : \"jffs\"\r\n0x000001520000-0x000002000000 : \"media\"<\/pre>\n<p>&#8220;boot&#8221; is the <a href=\"https:\/\/www.denx.de\/wiki\/U-Boot\">U-Boot<\/a> boot loader (used on many embedded systems).<\/p>\n<p>&#8220;oem&#8221; contains information including the MAC address, and names like &#8220;StuartCam&#8221;, &#8220;Minions&#8221;. \u00a0Assuming all of these various camera brands out there are all using the same hardware, this may be where the firmware gets customized for each OEM.<\/p>\n<p>&#8220;config&#8221; contains system settings used by the firmware.<\/p>\n<p>&#8220;kernel0&#8221; and &#8220;kernel1&#8221; are the two copies of the firmware (each is a standard U-boot uImage file, containing a kernel with an embedded root filesystem).<\/p>\n<p>There are two copies of the firmware to support firmware upgrades &#8211; you boot from the &#8220;active&#8221; kernel, and a firmware install will overwrite the &#8220;inactive&#8221; kernel &#8211; only marking it as &#8220;active&#8221; after the install is complete. \u00a0 I&#8217;ll describe the kernel images\/firmware update process in more detail in a future post.<\/p>\n<p>&#8220;jffs&#8221; is a &#8220;jffs2-formatted&#8221; filesystem mounted as &#8220;\/mnt\/config&#8221;. \u00a0I don&#8217;t see anything stored here currently, but it may be used for user settings.<\/p>\n<p>&#8220;media&#8221; appears to be empty\/unused (about 10-megabytes of free space)<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Similar products This camera is manufactured by Tend Insights. \u00a0They seem to have several other products, some of which look physically similar to this one. Looking at the kernel header, I found the string &#8220;Imogen-X860-I&#8221;. \u00a0Googling for that found imogenstudio, which also sells cameras, some of which look physically similar to the Stuart Cam. \u00a0Here&#8217;s &hellip; <a href=\"http:\/\/www.hackspot.net\/StuartCam\/2017\/04\/20\/an-initial-look-at-the-system\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;An initial look at the system&#8221;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-65","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/posts\/65","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/comments?post=65"}],"version-history":[{"count":10,"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/posts\/65\/revisions"}],"predecessor-version":[{"id":94,"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/posts\/65\/revisions\/94"}],"wp:attachment":[{"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/media?parent=65"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/categories?post=65"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.hackspot.net\/StuartCam\/wp-json\/wp\/v2\/tags?post=65"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}