Hacker News new | past | comments | ask | show | jobs | submit login
VoCore: A coin-sized Linux computer with wifi (indiegogo.com)
115 points by noonespecial on May 25, 2014 | hide | past | favorite | 42 comments



A 4MB flash, 16MB ram version of this (same chipset) is already freely available for $15 as module (1), or $26 with a break-out board (2). You get 2xserial, a bunch of free GPIO's, 2xethernet, i2c, usb. OpenWRT has already been ported to this module, although you need to really strip it down to make it work reliably given the small amount of ram.

1) http://www.dx.com/p/hi-link-hlk-rm04-serial-port-ethernet-wi...

2) http://www.dx.com/p/hlk-vrm04-multifunction-uart-serial-port...

3) http://wiki.openwrt.org/toh/hilink/hlk-rm04


I was looking at the product picture for the module with the breakout board (2). It looks like the only available GPIO come from the 10-pin header at the top of the board. From what I could see it looked like there were only 6 free GPIO. Am I missing something? I did not see any datasheets or PCB layout files on their site.



Poor guy. He played the "secret chord" of maker crowdfunding: Linux, Network, GPIO, <=$20.

Looks like he was planning on making about 300 units by hand. Now he has to make nearly 700 and it hasn't even been a week. 8 weeks left to go.

Good luck. May the maker gods smile upon you.


I think he was always planning on getting them properly made by machine, that's what the kickstarter is for (the upfront cost).

His other advantage is being Chinese, and therefore not having to bother with any of the expensive wireless approval process that's normally required for this sort of thing.


Chinese people get FCC exemptions?


Why would they bother?


Theoretically, no. However, if he makes a bunch of devices and posts them to the US, in practice the FCC are never going to be able to enforce the requirements on him.


+1 bonus to FCC exemptions.


I really want a computer that you can run on a potato battery or two. Does such a board exist? What is the lowest-power general-purpose Linux computer in existence that's somewhat convenient to use?


If my maths is right, based on this Wikipedia article[1] a typical lemon or potato battery will deliver about 1mW.

That's not enough to drive even the smallest 32 bit CPU (eg the Cortex M0). Or to be more accurate, you could drive the CPU at ~ 100 Hz from your potato, assuming you had no other hardware.

If you want to play with a tiny, cheap 32 bit board that does not run Linux, but is a lot of fun anyway, I recommend the Freescale Freedom board FRDM-KL26Z (under £13/$20 each -- they're so cheap that one unit didn't reach the minimum order value of the reseller so I had to buy two of them :-).

[1] https://en.wikipedia.org/wiki/Lemon_battery


> That's not enough to drive even the smallest 32 bit CPU (eg the Cortex M0).

Last I heard, low-power Cortex-M chips were running at 100-200µA/MHz, with supply voltages in the 1.8-2.0V range. So you might (barely) have a chance of getting it running on a potato or two, especially if you use sleep modes aggressively. And just because MCU alone is bit boring you could throw in a Sharp Memory LCD (or eInk stuff) too, those are also well below .5mW power consumption.

Of course that would still be far cry from a linux system, but on the other hand it is running on a potato.


Pic chips would work just fine on such a power budget. Especially if you let them go dormant for a bit between work to charge up a capacitor.


http://www.d116.com/spud/ Shows how someone did just that.

The page it used to host: http://web.archive.org/web/20010922060837/http://d116.com:82...


Does Linux run on PIC?


I don't know, but it does run on an AVR. Sort of.

http://dmitry.gr/index.php?r=05.Projects&proj=07.%20Linux%20...


Great link, this guy has a ton of other cool projects too.


No. Why do you want Linux? Linux needs a lot of memory will eat your power budget.


For really-low-power computing, you may want to consider operating intermittently - unless you have a lot of potatoes, there's not much current available.

Something like this may be useful:

https://www.sparkfun.com/products/9946

Though I believe that chip is more focused on collecting sporadically-available energy (from solar panels or piezos) to run a higher-current device in bursts of activity.


I haven't seen a linux computer on a potato battery but here's an msp430 running on a couple grapes: http://www.youtube.com/watch?v=Db6TWl5FSGw


According to the video [1], the MSP430 supports lychees, kiwi, papaya, mango, asian pears, lemons, and strawberries, and a quick Google search does not show anyone getting it to work with a potato. There's nothing stopping you from trying, of course, but these are all fruits and the firmware is not open source, so you may have difficulty getting it to recognize a potato.

[1] Exact link: http://www.youtube.com/watch?v=Db6TWl5FSGw&t=38s


You can run plenty of low-power microcontrollers on that kind of current if (a) you're happy to write in C and (b) you're not driving anything that needs more power like radios or networking.


I'll provide some google terms for your request. Note that you have multiple orthogonal criteria, so any balancing act across those areas will "win" at different points for each person's personal opinions.

WRT ultra low power computation and ignoring everything else, google TI MSP430 family or Microchips XLP (extreme low power) PIC series. Typical marketing figures are double/triple digit microamps of current per MHz of clock at a couple volts, so figure double/triple digit microwatts per MHz (and usually tops out at not many MHz), which is of course fairly meaningless when compared across families because its a clock freq. Its rather important if a simple binary add takes one cycle at 300 uA/MHz vs 324 clock cycles at 30 uA/MHz, the better marketing figure does not necessarily provide best system performance figure of "actual real world work per microwatt"

If you want easy to use, that ranges from some $12 dev board from TI which does approximately nothing you listed, up to the somewhat famous Dimitry Grinberg emulator where he hand wired some dynamic ram and numerous other devices as I/O devices to an ATMega 8-bit chip, then wrote an ARM emulator on the ATMega, and stuck linux on the emulated system. Thousands of instructions per second. But hand wiring is often not seen as convenient as "open dev kit box, plug into USB, all done".

http://dmitry.gr/index.php?r=05.Projects&proj=07.%20Linux%20...

Finally WRT "general purpose linux" I'd personally define that as something with enough ram and storage to run some modern stuff on top of a JVM. Most of these specialized "linux" SBCs are around the hardware level of a early/mid 90s desktop and have the hardware to make a great router, or wifi access point type of appliance, but you're not going to run a modded minecraft server on 8 megs of ram, even if thats perfectly adequate for a home router or a wifi access point or a DHCP server or DNS server or whatever. So you're getting openWRT to act as a router, not a "mainline Debian install" Although there are small machines like the raspi that are almost but not quite "mainline Debian installs" and home-theater PCs like zotac zboxes that are just small desktops and therefore make great little mainline Debian boxes (for like 10 watts and $300, admittedly)

There are also interface issues such that for J random hacker a wanna be settop box is probably a lot easier to set up and operate than a wanna be network appliance. Solely easy or difficult at the I/O initial install level, not beyond that.

There's also definition problems with "low power". At a dollar per watt-year, there's economic noise level of low power where an old desktop is probably fine, even if run 24x7, and if you're doing this for an employer they'll be paying you about ten thousand times as much as a cost of employment as the cost of the electricity you'll be using in this experiment, or done at home it'll be "about a ten thousandth your income" so energy cost is not a major economic driver. Low power in that context merely means it won't have an effect on the local HVAC situation. Then there's deep space spacecraft low power, where every watt of electricity costs multiple kilograms of plutonium so all that matters is its reliable and low power and nothing else matters. Everything else falls somewhere in between.


> WRT ultra low power computation and ignoring everything else, google TI MSP430 family or Microchips XLP (extreme low power) PIC series. Typical marketing figures are double/triple digit microamps of current per MHz of clock at a couple volts, so figure double/triple digit microwatts per MHz (and usually tops out at not many MHz),

There are plenty of manufacturers claiming now "ultra-low power" in various forms. EFM32, STM32L, Kinetis L-series come to mind now.

> which is of course fairly meaningless when compared across families because its a clock freq. Its rather important if a simple binary add takes one cycle at 300 uA/MHz vs 324 clock cycles at 30 uA/MHz, the better marketing figure does not necessarily provide best system performance figure of "actual real world work per microwatt"

Indeed. You also need to account for effects like "race to sleep" and the various special low-power operating modes. One recent interesting development in that area is "ULPBench" http://www.eembc.org/benchmark/ulp_sl.php which kinda promises to deliver a "work per microwatt" metric. Too bad it is so new that I haven't actually seen any credible results yet.


A cheap android phone.


With 64MB RAM, this could have been a superior alternative to the TL-WR703n [1]. Still even with 32MB it's nice to see more devices and boards in this area.

[1] - http://wiki.openwrt.org/toh/tp-link/tl-wr703n


Backed at the $40 level. I'm a big fan of CPU modules like this, they solve the difficult problems and I can solder them onto a simple two-layer PCB that has whatever I need for my application.


Anyone know how much power this thing would draw? In my experience wifi is one of the more power-consuming components of a lightweight computer.


Carambola2 linked by user revelation above specs .5W power consumption. I'd assume this device would be in the same ballpark.


It's unfortunate that of all the options, only one is a dock + board option (and that one is, of course, sold out).

Am I missing something? Clearly I could buy the board and dock separately but it's odd that the higher priced options don't include an option with docks.


Seems too good to be true - but I'm not a hardware guy. Something like this looks like a Godsend for wearable computing, drones/copters, smart toys, household automation, etc. Can anyone with more clue comment?


These kind of gadgets already exist, see e.g. the

http://8devices.com/carambola-2

They are basically breakout boards for MIPS SoC chips intended for use in home routers.


It is actually quite bulky for a wlan capable linux computer, but the smaller ones like http://hackaday.com/2013/08/12/hacking-transcend-wifi-sd-car... don't give you acces to any gpio pins.


It's basically an eval board for a Ralink SoC. I believe this particular chip is for lowish-end WiFi routers.


I like the dock concept. Haven't seen it before. He (she?, they?) isn't claiming originality on the dock but it seems to fit his board form factor perfectly. Any precedence on that?


eyeFI cards and their ilk already exist. They don't usually expose their ARM processor, but I've seen a few articles about how to hack specific models. They usually run linux on an arm inside.


If you get the 50-pack, is it possible to make a Beowulf cluster out of them, using Wifi for the network connections?


From the linked article "It contains 32MB SDRAM" which would have been pretty awesome in 1994 or so. In other words you could do what I did with linux in '94, which was quite a bit.

Unfortunately given what I do with linux in '14 I checked and per ps on one box and the VSZ of /usr/sbin/sshd is 43792K aka about 44 megs, so you'd be about 12 megs into the swap just to log in. Not that vanilla sshd is the lightest memory process out there.

Of course people did run Beowulf clusters before 2014, you'll have to run some 90s era software given 90s era specs.


I don't get it; VSZ is just the virtual memory, i.e., address space, not actually used space (at least, not in Linux). You shouldn't need any swap for it.

My laptop doesn't have swap and only has 2GB of RAM, but it has no problem "allocating" the 3GB+ of virtual memory that the processes are using.


Fair enough, but the general point of mere utility processes consuming all of the available resources leaving nothing to the overall app remains an issue.

I looked for a "big" RSS/RSZ and found my puppet using 53 megs. On a 6 gig machine thats not a big deal, and the elimination of "by hand" administration makes it a fair trade, but on a 32 meg machine that 53 megs would be an issue.


OpenWRT has been running quite successfully on that class of devices for some time now. Sure it is using busybox, some lightweight libc, dropbear instead of openssh for ssh etc, but in the end there is still some RAM left for applications.


Yes, you totally could. LuaJit should run fine on this platform.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: