Cheap Displays for Old Hardware

A couple of months ago I dug out my old Commodore hardware again and started tinkering with it – the goal being to finally try out a bunch of mods, hacks, and builds that I missed back in the day. To start with, I bought a cheap TFT display (new link on eBay, even newer link on eBay) for around 13€ to connect to the C64 and C128.

It was meant to sit on my work bench to e.g. quickly test a naked C64 board. It wouldn’t matter if the video quality wasn’t great. But after I made the necessary adapter cable and hooked everything up, I was a little disappointed to find out that the display wouldn’t show anything other than a black screen interrupted by an occasional flicker. I verified that the display itself was working by connecting it to a Raspberry Pi and I double-checked the cable I had made. Continue reading

The Modular WifiModem64

I’ve been playing with the ESP8266 since late 2014 and it was love on first sight: so many possible uses for such a small device at such a low price tag. And very early on I thought: wouldn’t it be great to build a WiFi “modem” from this? That shouldn’t be too hard. But I didn’t find the time to pursue the idea then. When I remembered again this summer, I was not surprised but still excited to find that others had had the same idea and hadn’t been as lazy as me.

Alwyz’s instructions on how to build such a device couldn’t be easier! I followed them and it worked like a charm. For the next months, my setup then looked like variations of this:

Continue reading

SD2IEC Revisited

When I discovered the MMC2IEC / SD2IEC project by chance back in 2009, it made me dig up again my soldering iron and electronic components after many years of disuse. I built myself one of those devices on a prototyping board and had a lot of fun doing so. It was the first time that I got involved with micro controllers and I learned a lot in the process.

Now, many years and projects later, I was looking for an excuse to try out KiCAD and to learn how to design my own boards using it. I had already ordered a small PCB I found on the net as a proof-of-concept to see if the Gerber files I produce would result in working boards. When they turned out just as expected I was eager to create something myself. This was the perfect opportunity to revisit the subject and make myself a brand new SD2IEC.

I wanted the design to be based on Shadowolf’s latest version but also make my own additions and changes:

  • The board should be able to tap into the cassette port of the C64 for power supply.
  • It should be board for external use with proper connectors just like my first build.
  • All components should be cheap to buy from Chinese suppliers.

So, this is the first prototype of what I came up with. I call it the “SD2IEC pluggable”:

Continue reading

Wireless Sensor Network, Part 2

Still trying to save my batteries

By now it is time for at least an intermediate update on this project. In the meantime I have indeed revised the sensor boards by adding a switching transistor controlled through one of the remaining digital pins on the ATmega. The firmware was modified, and it will now power down the attached sensors before entering sleep mode. Disappointingly, this resulted in a battery lifetime extended by no more than roughly 10%.

On a mostly unrelated note, the voltage graph now looks “stepped” when compared to the previous one. This seemed to be a direct result of switching from maniacbug’s original driver for the RF24 module to the one newly optimized by tmrh20. I’ve got absolutely no clue why this would affect the voltage measurement against the bandgap reference, but there it was. If you can shed some light on this, please leave me a comment.

The next thing I tried, somewhat desperately, was to reduce the number of data samples by increasing the sleep time from 1 minute to 5 minutes. This had no discernible effect on battery life-time. But at least it leads to the conclusion that I need to further investigate power consumption during sleep mode.

So, just assuming that it was the sensors that were draining the batteries in sleep mode turned out to be a bad idea. Now I really need to replace my crappy 7€ multimeter with something a little more precise that will allow me to actually measure which part of the circuit is drawing which amount of current.

Wireless Sensor Network, Part 1

With all components finally having arrived from China, I built the first couple of wireless sensors a few months ago. They are using the cheap nRF24L01 transceiver modules for data transmission based on the RF24Network network layer. I’m using a Raspberry Pi with the transceiver module directly connected to its GPIO pins as the root node. The sensor nodes are controlled by an ATmega328 microcrontroller flashed with the Arduino firmware for convenience.

Each sensor node currently features a DHT11 humidity sensor, a DS18B20 digital thermometer, a BMP180 barometric pressures sensor and it’s powered by three AA cells. The controller spends most of its time in power-saving sleep mode, waking up to send a data packet about every minute. Each packet contains the readings from the three sensors as well as the battery voltage as determined against the bandgap reference.

The setup is far from final. For one, I’m still not sure how to store the data. Currently, it is just logged into a text file with an occasional and experimental import into OpenTSDB. I haven’t really come to trust OpenTSDB since I haven’t found a suitable and convincing way to backup the HBase data, yet.  Also, I might still replace the Raspberry Pi root node with an Arduino based MQTT relay.

First though, the power consumption of the sensor nodes needs improving. When I started out I was hoping for each node to run for close to a year on a single set of batteries. As you can see in the graph above, with the current design a set of three NiMH batteries with low self discharge lasts for no more than 6 weeks. What comes to mind in order to improve this, is to switch off the sensors and the transceiver in between samples. That is probably what I’ll try next. Please let me know if you’ve got any other ideas!

 

 

Seeeduino Stalker: Writing to the SD Card

After I managed to upload the first sketches to the Seeeduino Stalker last week, I was eager to try the special features offered by this special kind of Arduino platform. I decided to try writing to an SD card first and followed the example included in the Stalker’s documentation. Which turned out to not work at all.

A couple of hours later and looking for errors in all the wrong places, I finally managed to find out how to use the FileLogger library:

  1. The SD card needs to be FAT16 formatted.
  2. The file that the the Arduino is writing to must exist, the library does not create files.
  3. The file must not be empty, it must contain at least one byte of data.

If these conditions are met, the following tiny sketch will work just fine and append data to the file:

#include "FileLogger.h"

void setup(void)
{
 byte buffer[] = "Hello World!";
 FileLogger::append("data.txt", buffer, 12);
}

void loop(void) {}

Update 10/8/12: Please note that this example will work with version 1.0 of the Stalker, only. For newer versions of the board you should try sadfatlib.

Connecting to the Seeeduino Stalker

A few weeks ago, Seeed Studio were celebrating their anniversary with a bunch of limited offers. Among other things, I acquired a pair of Seeeduino Stalkers v1.0 with an Atmega 168. Unfortunately, the serial interface on those boards is not labeled. So it took me a while to figure out how to connect the FTDI breakout board. With a small adapter board, programming the Stalkers with the Arduino IDE now works like a charm. (Select board type “Duemilanove w/ 168”.)

Waiting for my DSO Nano

I always wanted my own oscilloscope. Not that I really needed one or missed it more than a couple of times. But you can never have enough tools! What kept me from ordering one or from buying a used one online so far, was not so much the price. It’s the fact that the space I have to keep my tools is somewhat limited. A regular oscilloscope would be yet another big box standing in my way and gathering dust most of the time.

dso-nano-productThen, a few month ago, a post on hack-a-day pointed me to Justblair’s review on the DSO Nano. Justblair got his hands on one of the “beta test” models of the DSO Nano, a brand-new pocket-sized digital oscilloscope developed by Seeed Studio. While it has a few limitations and draw-backs, it’s size and the price tag of only $89 do make it a really interesting option. When I checked back two weeks ago, I noticed that Seeed Studio was accepting pre-orders for the final version of the DSO Nano to be shipped on December 10th. So I had to order one.

The probes that come with the DSO Nano are supposed to be rather basic, which is alright at that price. Seeed Studio offers a BNC adapter, allowing standard probes to be connected to the DSO Nano. Unfortunately, the adapter was sold out the day that I placed my order. When it was back in stock a couple of days later, I sent an email, politely asking if they could replace the spare probes that I had ordered with one of those adapters. They are both the same price. My email was answered quickly, and Xiang Fan promised to update my order. Great customer service!

By now, the DSO Nano seems to be ready, and the shipping seems to be in progress. I can’t wait to try it out. But it probably won’t make it all the way to Germany before the beginning of next year. Well, you always need something to look forward to.

Making a XU1541 Cable

I have been documenting interesting software and programming related findings in my own private Wiki for a few years now. This turned out to be really useful in many cases, especially on topics that I would run into only very infrequently. Most of these notes would not be of any interest to anybody else but me, while a few of them might be worth offering to a wider audience. All it would take would be some nice presentation and a little effort to write things down in whole sentences. Or so I thought.

IMG_4934b.JPG

The finished XU1541 adapter.

When I began tinkering with electronics again, I soon decided this would be a great excuse to start my own blog, sharing my progress. After my initial enthusiasm had worn off, I soon realized that I had somewhat underestimated this project. It takes a good deal of time and effort to write things down in whole sentences and to present them nicely. As a result, there are a few projects that I finished this year that I failed to put up here so far. Most likely, I have forgotten a lot of interesting details by now. But I’ll try and summarize what I do remember.

Continue reading