Lets begin with Part 3 in which I’ll hook up the ATtiny85, program the simple LED blinking test, take it away from the Arduino, run it on a 9V battery and also how we are actually using the thermistor to calculate the temperature.
Firstly we’ll visit the website I gave in the first part, which shows us how to hook up the ATtiny85 to the Arduino so the Arduino can program it. Here is a mirror of the site and download files in case it’s down: HLT wiki Arduino A Ttiny 4585_files
We choose from the Arduino program to open up the ArduinoISP sketch which is below the “8. Strings” selection. Now just upload that to your Arduino.
Welcome to Part 2, here we’ll test our implemented code out on the Arduino for a proof of concept. As you’ll recall the Standalone Temperature Logger’s function is to record temperature every x minutes defined by the user and log this to the EEPROM.
The code is fairly simple and will be explained in this post. What hasn’t been coded is my implementation of a simpler 2 Wire protocol as this actually requires an ATtiny85, so I’d like to make sure the code is functional before continuing.
I plan to build a Standalone Temperature Logger with the minimum components as I can, I’ll be using the ATtiny85 and Arduino software to program it. Firstly I’ll have it run on the Arduino to confirm it’s working, then migrate it to the ATtiny85, make it run on battery and make a PCB of it all. It sounds like a simple concept, but I know there’s going to be more to it that meets the eye.
Design Characteristics
Use the minimum components possible
Power the project with batteries
Specify the logging delay time
Write temperature to EEPROM on-board
How to extract data from EEPROM
Now lets go through all these design characteristics.
Most of all Queenslanders would know that there has been a scheme to install a Wireless Energy Monitor for quite some time so lets take a look inside. This energy monitor lets you check your current power usage, greenhouse gases produced and cost with these values been shown for the current day, past day, week, quarter and year.
So I’m playing around more with the Scanalogic 2 Pro and thought instead of just reading the Logitech LX310 receiver’s EEPROM I would actually probe it and see what’s going on when it starts up. My plan for this post is to make it as simple and easy to follow as possible.
As you might know it’s a ST 95160 16Kbit EEPROM which is uses SPI protocol; I’ve found that SPI is harder to understand and use than two-wire (I2C) protocol. I used the Arduino SPIEEPROM page to assist me as well as the datasheet which once you read parts of it enough times and see what’s happening in the logic actually starts to make sense ๐
Download the complete timeline of SPI communication here: Logitech LX310 Reciever SPI 10Mhz
You’ll need to download the Scanalogic software in order to use the above file. Please note that the ms timeline shown in these pictures may be different to the timeline you download, however all queries are still the same.
Here is an overview of the first 10ms upon connecting to my computer.
What I suspect we see up to the first millisecond is the chip in the receiver is initialising itself by looking at the CS line as it’s going high and low very quickly, plus it could just be the rush of power to it causing the CS to go all funny.
I thought I’d look into reading data from an EEPROM that is I2C capable from a PCB, the PCB is from a KVM which is a device that allows you to use your keyboard, video (monitor) and mouse on different PCs without switching out the cables.
Below is the PCB and the EEPROM which we’ll be looking at.
If you can make it out it’s a Atmel 24C32A, a 32Kbit EEPROM, datasheet here: atmel 24c32a
So I’ve been playing with the LED Matrix for a little while and decided a few weeks ago to make a breakout board for it. There are 3 versions of breakout board, all of which can be connected together so you can send your outputs for each register via just 3 wires. Now you can save time wiring the shift registers on your bread board.
The first version is the the basic Shift Register Breakout Board.
Today we’ll be tearing down the CardScan Executive; a device that scans business cards and uploads them to your computer.
One screw later, it’s uncovered. We can see from left to right, the cable that I assume connects to the image scanner, then the 2 wire cable which connects to what looks like an IR receiver or sender for detecting when business cards are inserted and then the connection for the stepper motor.
I’ve now gotten a feel for the LED Matrix and have made a Road Runner game for it too, similar to the LCD Road Runner except you don’t have enemies and don’t shoot. I’ve optimised the way levels are stored better than LCD Road Runner so we don’t have to use PROMEM any more. The main highlight is that you can make your own level very easily which I’ll show you how to do near the end of this post.
LED Matrix Road Runner v1.0 (10 December 2010) โ Initial Release with 1 level
Instructions
You control the dot and you need to avoid the walls, you can move in all directions.
AdvanceVGA – Play your GBA on the big screen! Swap out the LCD for our board, solder some wires, connect 5V USB and VGA and you’re ready to go.
GBxCart RW allows you to backup GB/GBC/GBA ROMs, save or restore game saves and re-write supported flash carts. Mini RW option available for GB/GBC only.
Wireless Gameboy Controller – Use your Gameboy, mGB, GBC, GBA, GBA SP, GB Micro, NDS and NDS Lite as a wireless controller on Windows, Linux, Raspberry Pi, etc, and on your NES, SNES, N64, Gamecube and Wii.