$9 Computer Board C.H.I.P

@david.baker

Thanks David for detailed guidance. I hope installation and operation of Piaware 3.1.0 (add-on) will be smooth. Delivery is expected in 10 to 15 days. I will try to install all necessary adsb software i.e. dump1090, 4 data feeders, web portal (if possible). Will post results after that.

Iā€™ve got a pair of final production C.H.I.P.s that I bought with this idea in mind and ran into a couple of issues (which were annoying enough to be showstoppers for me for ADS-B). PiAware 2.x installed easily; I never tried 3.x on them. I eventually gave up on it for the following:

  1. With firmware 4.4 (and later), they include an Ethernet over USB gadget driver built into the kernel that could not be disabled. This is problematic for us because it generates a random ethernet MAC every time it reboots. Unfortunately, this is the MAC that is used for identifying the feeder to FlightAware, so I wound up accidentally creating a new PiAware site every time I rebooted. The only solution they offered was to downgrade to firmware 4.3 (which is no longer getting useful additions/upgrades). I think the solution for this will have to come from the PiAware software side of things.

  2. Power, power, power. The C.H.I.P. has an on-board LiPo battery charging chip (AXP209) that limits the current draw on the USB power input to 500 mA so you donā€™t cook your laptop if using it to power the C.H.I.P. You can bypass this using a new command in firmware 4.4 (yeah, that firmware 4.4), or by powering through the GPIO pins. If you donā€™t do one of these things, the power draw from starting dump1090 and the USB receiver will cause C.H.I.P. to crash and turn off.

I tried running it through a powered USB hub (I just swapped a C.H.I.P. for my old RPi B that is running PiAware and a Pro Stick very happily via a Pluggable hub) and still had trouble with it crashing when under load. The power management stuff keeps improving, though. I get the impression that the power stuff can be sorted out with enough diligence - maybe connect a 2-3A 5V power supply to the correct pins and bypass the AXP209 chip entirely, and use a powered USB hub to run your USB receiver.

  1. The R8 CPU is not very powerful. Itā€™s a single-core 1Ghz ARMv7 and is just a little more capable than an old RPi model B/B+. It really bogs down when doing anything CPU intensive, even apt-get update. I suspect that it would struggle in an area with lots of planes to track/decode, and running 4 data feeders and a web portal may be just too much.

All that said, itā€™s a pretty interesting piece of hardware and a clever approach, but Iā€™m sticking with my RPis and Orange Pi for ADS-B. Iā€™ve finally gotten one C.H.I.P. very stable running a display of a ThingSpeak data channel and am pleased with it, though I really want HDMI out (but $22 shipped for the C.H.I.P. HDMI adapter isnā€™t going to happen). The other one is in a box doing nothing ā€“ if anyone wants it, shoot me a message and letā€™s make a deal.

Apologies to FA for veering off topicā€¦ Did you get the VGA adapter with the CHIP? If so, how was it? I salvaged the screen from an AOC USB monitor and bought a cheap driver circuit off of eBay, but it only has VGA input and no HDMI. I was thinking about making a small magic mirror with it and a Pi but the CHIP might be a better way to go if I donā€™t have to convert the HDMI to VGA, plus the CHIP is smaller.

@gismonkey
Thanks for the detailed and very useful review.

No, Iā€™m just using the composite video out. Good luck with the magic mirror!

Regarding problem #1, cant add the MAC spoof into the cmdline.txt as such and reboot to get your static MAC issue resolved? (Assuming they will run raspian/arm) - Iā€™m not familiar enough with the hardware. If vanilla Debian, should be able to accomplish the same using iproute or macchanger I think.


sudo sh -c "sed -i 's/$/ smsc95xx.macaddr=b8:27:eb:xx:xx:xx/' /boot/cmdline.txt"

I donā€™t have a CHIP, the other issues you raised could be the stopper for higher traffic sites.

piaware 3.2.0 (youā€™ll need to build it yourself at the moment) has an option that lets you override the MAC address used for site selection, which might help in this case.
(YMMV, experimental feature, is likely to go away once a better alternative is in place)

Got this email newsletter:

*C.H.I.P. gets 3D acceleration, the web flasher gets updated and Alpha C.H.I.P.s get out of the vault.

	 				 			 				 				 				 				 				 				 				 				 				 				 							 							 								 							 							 								 	 				 				 				 			 				 				 				 GR8 News! We've updated C.H.I.P.s software, improved our Chrome web flasher and we're bringing Alpha C.H.I.P. out of the vault. Read on!

C.H.I.P. goes 3D (NAND, thereā€™s more!)

Last week we announced 3D acceleration for PocketC.H.I.P. and weā€™ve already seen the community run Quake 3 and Kodi! Today, weā€™re excited to bring 3D acceleration to C.H.I.P.

Head over to our new and improved Chrome web flasher to get 3D on your C.H.I.P.(s)! As an added bonus for updating, our new C.H.I.P. software will double the storage of all C.H.I.P.s shipped to date. Thatā€™s and extra 4 gigs!*

INSTALLATION OF DUMP1090-MUTABILITY ON $9 BOARD ā€œC.H.I.P.ā€
Received my C.H.I.P. board. Tried to install first ONLY dump1090-mutability using JPā€™s automated script to see how it goes.

When reached the stage to configure automatic start of dump1090-mutability, the C.H.I.P. crashed. Tried several time, exactly same happens:


Configuring dump1090-mutability
dump1090 can be started automatically via an init-script. Otherwise, the init-script does nothing; you must run dump1090 by hand. You can modify the options used when automatically starting dump1090 by running ā€œdpkg-reconfigure dump1090-mutabilityā€ as root, or by editing /etc/default/dump1090-mutability.

Start dump1090 automatically?


Enabling lighttpd integrationā€¦
Enabling dump1090: ok
Run /etc/init.d/lighttpd force-reload to enable changes
Restarting lighttpdā€¦
Processing triggers for systemd (215-17+deb8u5) ā€¦

ā€¦CRASHā€¦ :frowning: :confused: :open_mouth: :angry: :frowning:

Rebooted, and tried to run dump1090-mutability manually:

chip@chip:~$ sudo dump1090-mutability
[sudo] password for chip:
Sun Nov 20 12:50:45 2016 UTC dump1090-mutability v1.15~dev starting up.
Using sample converter: UC8, integer/table path
Found 1 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001 (currently selected)
Found Rafael Micro R820T tuner
Max available gain is: 49.60 dB
Setting gain to: 49.60 dB
Gain reported by device: 49.60 dB

*5dc03cf497411a;
CRC: 000000
RSSI: -22.2 dBFS
Score: 750
Time: 181312.08us
DF:11 AA:C03CF4 IID:0 CA:5
All Call Reply
ICAO Address: C03CF4 (Mode S / ADS-B)
Air/Ground: airborne

*59a3ed7c8d77f4;
CRC: 000000
RSSI: -22.8 dBFS
Score: 750
Time: 269945.58us
DF:11 AA:A3ED7C IID:0 CA:1
All Call Reply
ICAO Address: A3ED7C (Mode S / ADS-B)

*5dc05f82c51da4;
CRC: 000000
RSSI: -18.1 dBFS
Score: 750
Time: 622513.33us
DF:11 AA:C05F82 IID:0 CA:5
All Call Reply
ICAO Address: C05F82 (Mode S / ADS-B)
Air/Ground: airborne
ā€¦
ā€¦
ā€¦30 seconds passedā€¦
ā€¦CRASHā€¦ ā€¦ :frowning: :confused: :open_mouth: :angry: :frowning:
.

That looks like a lot like the crashing I saw that was probably related to power supply. Once you get the cpu load up a little, the combined power draw of the C. H. I. P. and the receiver is probably over the 900 mA limit they set, so it shuts down to keep from frying your computerā€™s USB port.

Are your crashes the power off, no lights on any more kind? Thatā€™s what I was having.

You may have more success with running the receiver through a powered USB hub. You might even consider the powering the C. H. I. P. through the GPIO pins, since it bypasses the power controller. The wiki has a great section on power.

@gismonkey

When the crash occurs, both the purple and green lights turn off.

With the power adapter (2 Amps) which came with the board, crash occured in less than 1 minute of stsrting dump1090. I used another adaptor from China (3 Amps) and with it the crash occured about 3 minutes after starting dump1090.

I tried to uninstall dump1090 so that I can do a fresh install, but it refused to remove/purge it saying the package is in bad condition:

chip@chip:~$ sudo systemctl status dump1090-mutability -l
[sudo] password for chip:
ā— dump1090-mutability.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)

chip@chip:~$ sudo dpkg --purge dump1090-mutability
dpkg: error processing package dump1090-mutability (ā€“purge):
package is in a very bad inconsistent state; you should
reinstall it before attempting a removal
Errors were encountered while processing:
dump1090-mutability

chip@chip:~$ sudo dpkg --remove dump1090-mutability
dpkg: error processing package dump1090-mutability (ā€“remove):
package is in a very bad inconsistent state; you should
reinstall it before attempting a removal
Errors were encountered while processing:
dump1090-mutability
chip@chip:~$

How to format its memory card and reinstall the Operating System? Its memory card is not temoveable.
.

Try dpkg --configure -a, it may fix the package state. Generally ā€œin a very bad stateā€ means that something happened like a crash in the middle of a package operation.

@obj
Thanks Oliver, it worked, and the Map with planes started showing.
I have used generic DVB-T (black) to minimize load.
Also, I used a 3 Amps power adapter, which has worked successfully on my RPI+ProStick.
However after running successfully for about 5 minutes, the C.H.I.P. crashed :frowning: :cry: :angry:

Below are the details if anyone is interested to see.

chip@chip:~$ sudo dpkg --configure -a
[sudo] password for chip:
Processing triggers for systemd (215-17+deb8u5) ā€¦
chip@chip:~$ sudo reboot

chip@chip:~$ sudo systemctl status dump1090-mutability
[sudo] password for chip:
ā— dump1090-mutability.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)

chip@chip:~$ sudo dpkg --purge dump1090-mutability
dpkg: error processing package dump1090-mutability (ā€“purge):
package is in a very bad inconsistent state; you should
reinstall it before attempting a removal
Errors were encountered while processing:
dump1090-mutability

chip@chip:~$ cd /adsb-receiver/build/dump1090-mutability
chip@chip:~/adsb-receiver/build/dump1090-mutability$ sudo dpkg -i dump1090-mutability_1.15~dev_armhf.deb
Selecting previously unselected package dump1090-mutability.
(Reading database ā€¦ 94614 files and directories currently installed.)
Preparing to unpack dump1090-mutability_1.15~dev_armhf.deb ā€¦
Unpacking dump1090-mutability (1.15~dev) over (1.15~dev) ā€¦
Setting up dump1090-mutability (1.15~dev) ā€¦
Enabling lighttpd integrationā€¦
Enabling dump1090: ok
Run /etc/init.d/lighttpd force-reload to enable changes
Restarting lighttpdā€¦
Processing triggers for systemd (215-17+deb8u5) ā€¦

chip@chip:~/adsb-receiver/build/dump1090-mutability$ sudo /etc/init.d/lighttpd force-reload
ok ] Reloading lighttpd configuration (via systemctl): lighttpd.service.

chip@chip:~$ sudo dpkg-reconfigure dump1090-mutability


Enabling lighttpd integrationā€¦
already enabled
Run /etc/init.d/lighttpd force-reload to enable changes
Restarting lighttpdā€¦

chip@chip:~$ sudo nano /etc/default/dump1090-mutability
#added Latitude & Longitude, as this option was not presented in dpkg-reconfigure step above. Saved file

chip@chip:~$ sudo systemctl restart dump1090-mutability
[sudo] password for chip:
chip@chip:~$ sudo systemctl status dump1090-mutability -l
ā— dump1090-mutability.service - LSB: dump1090 daemon (mutability variant)
Loaded: loaded (/etc/init.d/dump1090-mutability)
Active: active (running) since Sun 2016-11-20 16:31:09 UTC; 6s ago
Process: 781 ExecStop=/etc/init.d/dump1090-mutability stop (code=exited, status=0/SUCCESS)
Process: 791 ExecStart=/etc/init.d/dump1090-mutability start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/dump1090-mutability.service
ā””ā”€801 /usr/bin/dump1090-mutability --net --ppm 0 --fix --lat 43.5xxx --lon -79.6xxx --max-range 300 --net-ri-port 30001 --net-ro-port 30002 --net-bi-port 30004,30104 --net-bo-port 30005 --net-sbs-port 30003 --net-heartbeat 60 --net-ro-size 500 --net-ro-interval 1 --net-buffer 2 --stats-every 3600 --write-json /run/dump1090-mutability --write-json-every 1 --json-location-accuracy 1 --quiet

Nov 20 16:31:09 chip systemd[1]: Started LSB: dump1090 daemon (mutability variant).
chip@chip:~$

Dont be shocked by so few planes.
Using Generic DVB-T (black) and stock whip antenna, inside room away from window

https://c4.staticflickr.com/6/5762/31021781971_a9e30c1a10_b.jpg
.
.
.
.
.
ā€¦C.H.I.P. CRASHED AFTER FIVE MINUTESā€¦ :frowning: :open_mouth: :confused: :angry: :cry:
.
.
.
.
.

Not good. I though they would be able to fix the USB power problems in the retail version.

The only way I was able to stop the crashing on the beta board was to use a powered USB hub.
Powered USB hubs can easily be $15 which raises the cost of a complete system a lot.
It does run stable but there are better solutions that donā€™t require a USB hub.

For reference: The regular RTL dongles uses around 270mA of power. The FA dongles use 300mA of power.

It also took until the Raspberry Pi 2 for the hardware problems to be figured out.
This isnā€™t uncommon in the mini computer world to have a buggy first version and sometimes a buggy second version.

[quote=ā€œdavid.bakerā€]ā€¦The only way I was able to stop the crashing on the beta board was to use a powered USB hub.
Powered USB hubs can easily be $15 which raises the cost of a complete system a lotā€¦
[/quote]

  1. THE $9 ILLUSION
    C.H.I.P. Boardā€¦ $ 9.00
    Caseā€¦ $ 2.00 :frowning: not a case, a base plate worth 25 cents
    USB Wall Charger ā€¦ $ 7.00
    Shipping from USA to Canada ā€¦ $10.33 :cry: :angry: :open_mouth: :astonished: :frowning:
    ===================================
    TOTAL Paid to Next Thing Coā€¦ $ 28.33
    Peripheral to be purchased separately:

  2. Powered USB Hub ā€¦ $ 15.00

  3. AV to HDMI Converterā€¦ $ 10.00
    ===================================
    GRAND TOTAL ā€¦ $ 53.33
    ===================================
    No wired network socket provided, but on board WiFi is there.

  4. Orange Pi PC
    Orange Pi PC Board + Transparent case + Power adaptorā€¦ $ 23.00
    Postage from China to Canadaā€¦ $ 5.89 :smiley:
    ==========================================================
    TOTAL Paid to Chinese Seller at Aliexpressā€¦ $ 28.89
    Peripherals purchased: (Optional, as wired network socket has been provided)
    Unbranded wifi dongle RTL8188CUSā€¦ $ 2
    Orange Piā€™s OS Armbian has poor WiFi driver support, and most dongles will not work.
    I tried 2 different types of wifi dongles, did not succeed, and am using wired network.
    ==========================================================
    GRAND TOTALā€¦ $ 30.89
    ==========================================================
    .

Hello to all,
I am new here on ADS-B forums and ADS-B in general but I have been Ham radio operator some 19 years now so I know the basics about ADS-B.
I was experimenting with raspberry Pi for long time and last year i got my C.H.I.P, it was used for all kind different projects. I had Pi running as feeder and from last month it stopped working for some reason, i was thinking to replace it with c.h.i.p but i read here that it will not be good to run as feeder because power problems.
Didnā€™t have much choice, so I decided to give it a try.
Flashed it with firmware to operate without GUI (as they say headless)
When power was first plugged in it was without dongle so it worked ok, installed mutability/dump1090 (many thanks to abcd567, i found all needed info on his posts)
After reboot it was not happy when i plugged in dongle, it halted (brownout), so I tried different approach. I had 5V 2,5A power supply from some old device and I cut off connector and soldered 2 pin headers on small piece of PCB.
Plugged it in on CHG-in and GND.
And it worked.
It is now running for few days but w-fi is not good on that part of building so it has a lot of ā€œholesā€ in feeding.
All is positioned very low on my office window and antenna is generic one that came with the dongle.

Yesterday I saw red square for MLAT notifying me about anomalie that CPU is running out of resources. Weather was really bad (strong thunderstorm) and there was not many planes at that moment so it could be something else that was bugging it.
For now, my only concern will it be able to deliver enough CPU power.
Donā€™t know how to monitor CPU usage via command lineā€¦ I am new in linux world :slight_smile:

Next task for me is to repair Pi to run them in parallel to see the difference.

P.S. sorry for bad english :slight_smile:

During testing we noticed the same thing with the CHIP. Power and Wifi problems are quite normal for first version boards. The original RPi had many similar problems.

The Raspberry Pi Zero W is a $10 board that doesnā€™t require anything special. It basically competes directly with the CHIP in features and price. Also the standard PiAware image file will work with the RPi Zero W so setup is super easy. Our Zero W test unit has been running for months and the wifi is very good.

If you want to check cpu usage you can use ā€œtopā€ or ā€œps auxā€.

Thanks for useful info, I have RPi zero but without wireless and BT, using it in another project for now :slight_smile:

Also found that power limit of AXP209 chip can be ā€œunlockedā€ with command axp209 --no-limit or i2cset -y -f 0x34 0x30 0x63 so it can use more than limited 500mA. Not good idea to plugging it on computer, USB port cannot deliver that much power but if used with adapter 1,5 A or more it will be ok. There is even a script for this (github.com/fordsfords/axp209-no ā€¦ e/gh-pages)

I googled for CPU monitoring and found **htop **that is ok, I was thinking of some logging tool that I can use to see in past if there was high CPU demands, but this is ok for now.
Currently dump1090 is using about ~35% and other processes occasionally take additional ~5% so in total average around ~40%.

Next i will experiment with some LNA, homemade filter and antennas. I found so much useful info on this forum :slight_smile: but not too much spare time :frowning:

MY C.H.i.P. computer was laying in my drawer unused since I got it in Nov. 2016 because it turned itself off shortly after start when a DVB-T was plugged in. The reason is that C.H.I.P. by default has a limit set for power it can draw from power supply (950 mA). This seemed to be protection for Laptop if C.H.I.P. was connected to it by the USB Cable.

Since I do not connect CHIP to Laptop through USB Cable, and power CHIP by a 2A power supply adapter, my C.H.I.P. does not need this protection.

Last night I found that this limit can be removed in a very simple way. I gave following commands to the C.H.I.P., and that did the magic. The C.H.I.P. is no more crashing, and feeding Flightaware, Planefinder, Flightradar24, Adsbexchange, and RadarBox24.

sudo axp209 --no-limit
sudo apt-get update
sudo apt-get upgrade
sudo systemctl enable no-limit

This is the page from where I found above workaround.

CHIP-aircraft

I have used a C.H.I.P. with the AXP209 --no-limit tweak for a PiAware site, but found that a near identical (Debian, manual PiAware installation) RaspberryPi 3 setup in the same location, with the same antenna and same radio, yielded better stats.

Purely anecdotal at this stage, I havenā€™t had the time to do a more quantified comparison.