Feed SparkFun Electronics [copy] http://www.sparkfun.com/feeds/news has loading error: cURL error 22: The requested URL returned error: 405
Simple Commodore PET Tape Interface
Before I put together a long term solution, I wanted a quick way to transfer software from my PC to my Commodore PET. There are other circuits, but I wanted something that used just one part.
The PET input is TTL level, so I needed something to go from audio level to TTL. Ideally a comparator circuit with plenty of gain. Well, I couldn’t find a decent comparator in my junk box, but I did find a CA3140 op-amp. This is way faster than I needed, but should work OK as a comparator. If you build this circuit, try to...
Purism Librem 5 campaign
There's a new project currently undergoing crowd funding that might be of interest to the former Openmoko community: The Purism Librem 5 campaign.
Similar to Openmoko a decade ago, they are aiming to build a FOSS based smartphone built on GNU/Linux without any proprietary drivers/blobs on the application processor, from bootloader to userspace.
Furthermore (just like Openmoko) the baseband processor is fully isolated, with no shared memory and with the Linux-running application processor being in full control.
They go beyond what we wanted to do at Openmoko in offering hardware kill switches for camera/phone/baseband/bluetooth. During Openmoko days we assumed it is sufficient to simply control all those bits from the trusted...
Game release: The Echidna Menace
Over the years I've dabbled making lots of small games, but I've always been afraid to release. This game isn't perfect, but it actually has some fun to it.
The sad state of voice support in cellular modems
Cellular modems have existed for decades and come in many shapes and kinds. They contain the cellular baseband processor, RF frontend, protocol stack software and anything else required to communicate with a cellular network. Basically a phone without display or input.
During the last decade or so, the vast majority of cellular modems come as LGA modules, i.e. a small PCB with all components on the top side (and a shielding can), which has contact pads on the bottom so you can solder it onto your mainboard. You can obtain them from vendors such as Sierra Wireless, u-blox, Quectel, ZTE, Huawei, Telit, Gemalto,...
First actual XMOS / XCORE project
For many years I've been fascinated by the XMOS XCore architecture. It offers a surprisingly refreshing alternative virtually any other classic microcontroller architectures out there. However, despite reading a lot about it years ago, being fascinated by it, and even giving a short informal presentation about it once, I've so far never used it. Too much "real" work imposes a high barrier to spending time learning about new architectures, languages, toolchains and the like.
Introduction into XCoreRather than having lots of fixed-purpose built-in "hard core" peripherals for interfaces such as SPI, I2C, I2S, etc. the XCore controllers have a combination of
I/O ports for...
Splitting the Atom
It’s not everyday that you meet someone with the talent and tenacity of Dave Banks (@hoglet67 on Twitter). In less than three days, Dave ported his FPGA based Acorn Atom from Xilinx and VHDL across to Lattice ICE40 and verilog. The result is a fully functioning Acorn Atom – running on our latest open source FPGA board, BlackIce.
The Atom was a forerunner of the Acorn Electron and the BBC Micro. It used a 6502 microprocessor an provided a chunky colour display – which was virtually unknown back in 1980 when the Atom first appeared.
On Friday, Dave emailed me to say...
A Minimum Interactive Language Toolkit
In previous posts I began to describe a minimum interactive language toolkit which could work standalone in virtually any small microcontroller. Here are the following prerequisites I stated in the previous post:
Interactive – commands may be typed at the keyboard for immediate execution Commands can be combined into programs then compiled for later execution Extensible – from a small kernel of commands, a whole application can be built No external tools required other than a serial terminal – all tools run on chip.This may appear to be a huge break from conventional wisdom, as virtually all embedded microcontroller development is done in high...
Minimal Computing – some more thoughts
This post is concerned with minimal computing – a subject that is close to my heart. I write this on the day that my Employers have suffered a major ransom-ware cyber attack on their servers and IT systems, bringing the companies activities to a virtual standstill. To me this proves the fragility of the technology that we entrust for our day to day lives. There has to be a better, much simpler way……..
In the 1960s, the world of computing was evolving quickly as many new machines came on the market. For code developers at that time, this presented a problem...
Osmocom jenkins test suite execution
Automatic Testing in Osmocom
So far, in many Osmocom projects we have unit tests next to the code. Those unit tests are executing test on a per-C-function basis, and typically use the respective function directly from a small test program, executed at make check time. The actual main program (like OsmoBSC or OsmoBTS) is not executed at that time.
We also have VTY testing, which specifically tests that the VTY has proper documentation for all nodes of all commands.
Then there's a big gap, and we have osmo-gsm-tester for testing a full cellular network end-to-end. It includes physical GSM modesm, coaxial distribution network, attenuators, splitter/combiners, real BTS hardware and...
Minimal CPUs – “One Page Computing”
As I continue to explore the boundaries between computing hardware, firmware and software as part of an effort to reduce the perceived complexity to something that I can understand, the idea arose for a computing platform with an artificially imposed simplicity.
Hackaday has run competitions for the best code application written in fewer that 1024 bytes of code, so this led me to think about what sort of computing machine could be constructed in fewer than 1024, 2-input NAND gates. Memory would not be counted.
It was whilst pondering this when I received a comment to a past blog post from “BigEd”...