I picked up a bunch of those uCs + a dev board quite some time ago. I even did some initial digging, but due to the lack of free time postponed any work on them. These uCs may not seem that tasty as stm32, but are still quite powerful and dirt cheap. (If you want to flood the market with something).
Category: hardware
MK802: First impressions, teardown and adding an uart.
I finally got it! For roughly 60 bucks an 1Ghz ARM CPU + 1GiB RAM is a deal. Anyways, since android is quite useless on such a device, the first thing I’ve done (after insuring that all came in working), I took the thing apart.
Some teardown photos can be found here.
Next was the surgical procedure of adding an UART header. I bet I’ll need that one pretty soon. The 4 pads near the CPU are Vcc(?), GND and RX&TX pair, so adding a header was simple and straightforward.
Vanilla firmware boot log follows.
(more…)
Mercury MW150R: Turning an Epic Fail to an Epic Win
Okay, that was fun. You see, it happened, that I got for nearly free a Mercury MW150R router. Since it was pretty sucky, I didn’t hope to find anything useful in it, nor I thought it could be the target for OpenWRT. Nevertheless, once I had a spare moment I cracked it open and…
Well, AR9331 describes it all. The same chip you’ll find on WR703N, so it WAS a target for OpenWRT after all. Next I hooked up the UART, and saw the very unpleasant picture. It had only 2 MiBs of spi flash, and 8 MiBs of RAM, barely enough to run VxWorks with a crippled web interface. So it was a nice time for an upgrade:
proof-of-concept: driving 13 servos with attiny2313 over usb
Heh, that proved to be a nice rant on an arduino-lover that complained something about the inability on mega1280 to drive enough servos for his app (usb controlled pan and tilt for a few cams).
I picked an uC that has nor the hardware output-compare channels to drive all 13 servos, nor any hardware usb (attiny2313), threw up a small board and after a few dozen lines of code, here we go:
Attiny2313 driving 13 servos with 16-bit pwm over the usb with little to no external components. I also fitted in an option to set each output to Z-state from the commandline effectively relaxing a servo.
Adding USB control to the bench power supply.
Finally! Just etched a few simple attiny2313-based boards, stuffed the VUSB stack and voila! So now, my homebrew bench power supply is usb controlled.
(more…)
RTL-SDR & Static protection.
Okay, I also got myself an rtl-sdr dongle and it rocks. However, just a tip.
If you ever think of connecting an external antenna – have a GOOD look at the PCB. Some dongles are missing ESD protection. Like the one I got myself from ebay.
If so, connecting a big external antenna will result in a dead dongle. The ESD Protection is BAV99, according to the reference schematics.
Thnkx for exception13 for drawing my attention to this issue.
You can get those for about 7 bucks for 100pcs at aliexpress with freeshipping.
Rolling out my own bench power supply.
I was moving old stuff around, when I found an ancient artefact of the times long gone: A Soviet 15W ТПП-245-127/220-50 transformer (Back from year 1979 or so. Yeah, it’s way older than me, lol). Being somewhat a fan of old soviet stuff I decided to throw up a bench power supply based on that one.
So, the whole thing has a very simple circuit. A diode rectifier, 4700uF capacitor and 3 GS6300 stepdown ICs providing 3 separate channels. I also popped some 1.8A recovery fuses, so if I screw up and make a short circuit, I’ll just have to wait a little, till it goes on again. The ICs can handle up to 3A of current, but I thought that would be a little to much for this kind of bench supply.
(more…)
Allwinner A10 @ Ampe A90: Enabling hidden usb host
Okay, recently I got myself such a tablet. So here goes the trick. It has a hidded USB host inside. You’d like to enable it in case you want to pop in some internal goodies like an usb jump drive, gps, 3g whatsoever.
However, you have to enable the host. This is done in the following steps:
(more…)
XC3S100E, STM32F103ZET6, clocking and such stuff.
Okay, lately I’ve been quite busy routing another killerboard with a friend of mine. With STM32 and Xilinx FPGA on the memory bus. These babies are intended for use in some robots, will post some details later. If I get a chance.
Anyway, the boards arrived, I quickly ported my Xilinx-sscu driver to bare metal and… pooh, it didn’t work.
It took me quite a while poking with an osclilloscope: I adjusted delays, added caps to CLK & DIN lines to remove spikes – same shit. Then I accidentally disabled the oscillator for the FPGA… And guess what – it worked. I enabled the oscillator after config was done – the FPGA started blinking happily. WTF?
Looks like I’ll have to add another wire for toggling oscillator from uC.
No sources or kicad circuitry YET. Just a pic of the board for now, it’s in REALLY early testing stage.
Flytouch II: adding internal bluetooth & a usb hub.
Well, just pics under the cut. Still need to get android stuff working. Modules get loaded already, I just need to compile bluez-utils and Bluetooth part of android.
(more…)