This is a personal project to build a header board for the Atmel AVR chips of the ATtiny series and more specifically 25, 45 nd 85. It should be also compatible with the ATtiny13 chips.
I really like the ATtiny series, especially the 8-pin chips – they are small but provide enough resource to build simple stuff. They are cheap too.
Here are some of the goals for this project:
Easy to understand schematics – with the minimum required ATtiny external components, that’s really simple.
Simple to assemble board – just few components – no SMD.
Easy to find and cheap components – it is only the IC and few other components.
I was able to buy everything from the local hobbyists store and from Internet at very attractive prices.
Schematics and Board
I designed the circuit at http://123d.circuits.io. This site is great. It allows me to to draw the circuit and then, after I’m finished, I can design the PCB as well. It have some glitches and need some improvements but worked just fine for my simple project.
That was one of my first projects on this website and as it turns out later when I received the PCB’s I made some designing mistakes – like size of the pads.
I chose 10-pin ISP connector because this is what I have at home but also because most of the ISP programmers on the market today, especially those available on eBay, are equipped with such connector. I chose the one that is larger – with a shell.
I put 2 8-pin headers type 2×4 on each side of the IC. I did this for two reasons:
For simple stuff I can use it as a breadboard – there are the IC signals on one row and GND on the other.
For more complicated stuff I can always add a shield-like board on top of it.
(later I figured one of the headers should be longer than the other so the shield won’t be put in the wrong direction)
There is a RESET button.
(later I realized that this may not be needed in most case and it takes too much space on the board)
There are to jumpers on the board. I put them because in some of my projects I need to connect external power source and at the same time measure the current that the board draws from it.
There is no Xtal on the board nor space for it. I think this is not needed in most cases. Anyways, for more complicated projects it could be added to the shield board.
There are no built-in LED’s on the board, as I would put on most of my experimental boards, since they may not be needed in general. No need to waste space.
Ordering the PCB’s
I ordered the boards at http://oshpark.com. For 3 PCB’s I paid $5.40 – that includes international shipping (to Bulgaria) – that’s $1.80 per board. Good price. The whole process took 21 days – from putting the order until I got it in my mailbox.
The boards arrived yesterday – they look great. They also have nice ENIG (gold-platin) on the pads.
Even before I started assembling the board I noticed some problems in the design.
Apparently the footprint that I chose for some of the components made them with tiny pads – will have issues soldering them. But those were already made components at http://123d.circuits.io and I couldn’t change them.
Another thing, not that important though, was that some of the white print (the text labels) were too small – this could be fixed very easy in the next version.
The holes for the tactile RESET switch were too small – it won’t fit for sure.
The holes for the tactile RESET switch were too small, so I soldered it on the surface. Similar problem with the ISP connector but somehow I managed to solder it.
Since this board will be used for prototyping it will be good to know what all those PIN’s are for, so I put stickers on the 2-row header connectors with names for the IC pins.
For more flexibility one of the power connectors is a jumper (2-pin male header) while the other is 2-pin female connector.
There are few things that I consider changing in the next version of the board.
Remove the RESET button. It is not needed in most cases but if necessary it could be connected externally directly to the PIN1 of the IC or if it is part of the functionality of the project could be added to the shield board. Although, the pull-up resistor hooked to the PIN1 of the IC should remain.
Remove the power jumpers. They take too much space on that tiny board and will not be used that often. External power could be connected through the 2-row headers.
2-row headers should be different in length so if there is a shield board it will not be put the wrong way. One 2×4 header (for IC PIN1-PIN4) and another one 2×5 (for IC PIN5-PIN8) sounds like a good choice – The extra length will not take that much space on the board but will make it a lot more universal.
Make pads larger. For some of the components, like the ISP connector they cannot be soldered.
Make the text labels (white print) larger so they could be easily read.
Use the simpler version of the on-board male ISP connector (no shell) so it will take less space on the PCB. Add also the necessary white print to tell how to put the female connector.
Add more text labels (white print) with components names, parameters, etc.
This board works just fine, there are no errors in the schematics or on the PCB.
It needs some improvements in the design, but most of them are not critical.
Interlecta presentation at Mobile Monday in Sofia went very well. I had the chance to present the company, our business, what our goals are and how we’re going to achieve them. Quite few people told me that my lecture was the most interesting one from the three presented there.
Other interesting topics that were discussed were investments in our region and investments in start-up companies, that was presented by Oriens. The other lecture – how to start a new mobile operator was not very interesting, in my opinion.
Later, during the networking, we were able to talk with other people, to exchange ideas and share some experience and opinion. It was interesting.
Last week I received a call from one of the organizers of Mobile Monday Sofia asking me if I could tell there the story of our company Interlecta. It was very nice to be recognized as one of the successful mobile startups.
Here is my brief agenda:
The idea. How we’ve got the idea of creating the product and starting a company.
Little history. How everything came together.
The team. Who we are and what takes to be part of a mobile start-up Interlecta.
The goals. What we’re trying to achieve and at what cost.
The approach. How do we enter the international markets and what makes a mobile start-up different from other companies.
Key business components. What are the most important relationships that a mobile start-up should establish.
Marketing. Non-standard and low budget approaches.
The learning. What we’ve learned along the road.
The future. What we expect from the future and how we adjust our business to the present economic environment.
This is based on my personal experience while resolving issues with the products of our company Interlecta, and it is not a general solution.
Start with a new product
It is always better to start with a new product. Don’t use previously created product that was free or paid – the time you could save by doing that will cause more troubles afterward.
This is mostly because the existing user that have already downloaded previous versions will have problem upgrading to the new release, either “try” or “buy” one.
Cannot get the correct version. One of the first problems that usually occurs is that people cannot see the correct version depending on whether they have purchased the product or not. The issue present almost in all cases when someone downloaded the trial and then purchases the full version – the result is that they cannot download the full version because it is not available on the screen.
Cannot upgrade. Another case would be when there is an upgrade of the release. They see the message, a notification by App World, that there’s a new version but there’s no button to download it.
Always increment versions. What we have learned while trying to resolve those issues was that the versions should be always incremental, i.e. the “buy” versions should be greater that the “try” version. Example: our Interlecta Translator trial was 1.3.19 while the full version was 1.3.21. That makes sense from database design point of view, but it’s not convenient at all, and such behavior is not documented, you have to learn it from experiments.
Problems with upgrading to full version
This is a common problem.
Canno upgrade to new release. If you have new release of your Try’n’Buy product people will receive a notification but when they go to the product screen at App World they will not be able to do the upgrade simply because there is no button for doing that. In our particular case there’s only a button to install the trial version.
An experiment worth trying. What we’ve found out is not a solution, but is more like a work around, it’s annoyingly slow process, but it’s ate least something that may help your customers. In short, you have to: Remove your application from App World; Remove the App World itself; Reinstall the App World; Login to App World through PayPal; Reinstall your application. It also involves rebooting your BlackBerry 4 times. That’s not convenient at all, but was the only was for me to get the latest full version.
Just couple of hours ago we have finished the first testing version of the new functionality of our BlackBerry application – Haitian Creole.
I have to admit that recently I’ve been talking with quite few people about our initiative to provide Haitian Creole, and especially Marian Douglas-Ungaro. We spent last several days looking for the best technologies to combine to bring that new feature to life, and finally today late in the afternoon we’ve managed to get the first translation on my BlackBerry from Engliush toHaitian Creole.
I don’t know how many people will download this and use it and how many of them will be doing anything in Haiti, but I’m glad that are able to provide that service. And not only that, we are the first company to offer that kind of software for BlackBerry.
The product, Interlecta Translator with Haitian Creole, is available for download at App World. There’s 7 days free to try download, but for some regions and countries it is available for free – just open App World on your BlackBerry and do a search for Interlecta to find out.
This morning our application for BlackBerry was promoted on the front page of the the RIM‘s App World and it will remain there for about a week.
There are some new features that we added since the last time it was there, most notably the connection diagnostic and setup tool. That allows the application on the first start to test all the available for the device connection and choose the best one, preferably the BIS-B because if its high availability. Of course it could be manually setup ti use Wi-Fi to save some bandwidth.
The application is priced at $2.99 and has a 7-day trial period, so you don’t really need to buy it before you see what you can do with it.
There are quite few new features coming up in the next version of the application, scheduled for sometimes next month, but most interesting will be probably our solution for the problem with missing fonts on your BlackBerry and the square boxes you may see sometime, especially when you receive Asian texts. I will post more info here and on Interlecta website when it becomes available.
FNV is a simple algorithm and produces good results.
I needed this functionality as part of another project that required automated generation of relatively large number of unique usernames based on information provided by the user.
Some challenges: Apparently PHP does not work well with numbers, especially large ones. I spent few hours trying to find out why my implementation was not producing correct results, … realized in the end that arithmetic with big numbers is something you should not do with PHP. To resolve these issues I had to use bitwise shift and add operations instead of multiply.