Sunday, November 09, 2014

Book Update

I apologize for not keeping up with the postings. Most of my free time lately has been spent writing my book, which has not given me much time for anything else. Part of what I am going through is trying to explain concepts that I have used so much they are like second nature to me for the past 30+ years. Think about explaining why 1+1=2 through writing and you get the idea.

But I have 5 solid chapters at this stage, and I have several more in mind, but not quite enough ideas yet to fill the pages I hope to have before the book is "done." I'm shooting for a finished book to be between 80 and 100 pages so I can sell a paper copy for about $10, and pretty much give away electronic versions (I'm trying to stay as affordable as I can with this).

After researching this a bit more, I do believe I can still release the book under Creative Commons via the noncommercial and no derivative version of the license - you can distribute my work as long as I get credit for it, you don't make any changes, and you don't charge for it. That way teachers can make copies for their students (either printed or electronic) and be completely legal. Sure, someone can put it on a torrent site but it isn't a lot of good without buying the board anyway.

Here is the table of contents so far:

Chapter 0: The Arduino IDE (Integrated Development Environment - or “your programming software”).
Chapter 1: Blink (Blink the LED)
Chapter 2: Variables and Traffic Lights
Chapter 3: Logic, Input from the Outside World, and If Statements (or If the World was Logical)
Chapter 4: Boolean Math and More on the If statement (Not as hard as it sounds!)

Some other concepts to be taught will be sending serial data to the computer, arithmetic operations, more variable types, etc.

Now if you will excuse me, I need to get back to my book!

Friday, October 31, 2014

New stuff to ponder

So I haven't been saying much lately. Got a bit overwhelmed and a case of cold feet and had to re-evaluate just what I needed to do.

So, in order to sell my trainer board, I realized that the simple lessons I had planned are not going to cut it. I'm having to write a book on programming the Arduino.

Now I know there are plenty of books out there, but what I am working on at this point is a short (80-100 pages tops) introductory with my little trainer board the only thing besides an Arduino Uno needed to learn a good chunk of programming. No kit of expensive parts, no tangents about getting parts from broken electronics, just basic digital I/O programming that can later lead to that other stuff.

So at this point I have chapters 0 and 1 written (0 deals with the Arduino IDE, 1 is the first actual program), at least a good draft of them. Plus I already know what is going to happen in the next three, and a good idea of what will be in the rest. The last chapter will be about how to use the board as a tool in writing and testing your own programs.

Because this is now turning into a book instead of what I thought would be simple lessons, I may not be able to release them under creative commons like I had intended. I want to support the open source movement and all but with all the work I'm having to put into this I want to make sure I'm protecting my work as well, so I'm looking into other options as I have the chance.

Please, share this blog with others who would be interested!

Thursday, October 23, 2014

Production Prototypes are here!

Here's what the prototype board looks like when assembled! Cute little board it turned into.

So tonight I get to work on my lessons using this little board - got some ideas over the last couple days that I want to add to my overall plan.

More to come soon, and please share this with interested parties!

Friday, October 10, 2014

Prototype Boards have shipped!

Got a twitter notification last night that my prototype boards have shipped! I should see them in the next week or so. Time to order parts for them!

Not entirely sure about my time-line, but I hope to launch a Kickstarter campaign somewhere in the next few weeks. Unfortunately it will not be ready in time for Christmas. Had I started a few weeks earlier, it might have worked. Sorry.

Anyway, I got a suggestion that multiple colors of LEDs might be a good idea (as opposed to all red like my first prototype). It won't affect the cost too adversely (I can still make my desired selling point). Multiple colors of LEDs got me thinking about possibilities for my lesson plan too.

Speaking of the lesson plan, I also looked into the cost of publishing of said plan in a booklet format, and that looks possible. Potentially be a value added stretch goal or even part of the main project.

That's all for this update.  I will have some time to work on lessons plans this weekend, so the next couple of posts will probably be about those.

Don't forget to share this post with anyone who may be interested!


Tuesday, October 07, 2014

Don't Blink!

Have the first lesson for Arduino use in rough draft format. It consists of some basic syntax of programming in the Arduino IDE and outputs with the program "Blink" (It is the 'hello world' of the controller universe). Lesson two is firmly in my head dealing with inputs and conditional statements with the program "Light on, light off" (push a button to turn the LED on, push a second to turn it off).

After that I intend to go into variables and such, but after that I'm still working on.

I intend to get a beginner's introduction with several experiments using my board with the Arduino, then start on a version for the Raspberry Pi. Beyond that I may do a version for the BeagleBone Black, but that is probably the end of my porting to other controllers (Not that I would be against others porting it to their board of choice).

I won't be posting every day, but I will try to keep people updated on my progress 2-3 times a week, and post polished versions of my lessons as I go.

Spread the word and leave comments about what you think on this project.

Sunday, October 05, 2014

Prototyping


Bright and early today!

So this is the mark 2 prototype board I ordered a few days ago. I only ordered 10 boards, which I hope to let some people test for me as for their usefulness. I am dropping the RGB LEDs from this board - I have a second, more advanced companion board in mind if this one goes well, and it would deal with PWM and analog signals. I had included them on my prototypes because I thought it would be rather cool, but I'm not as sure at this point they belong on this board.

A second reason is that they are a bit on the pricey side. Granted, it's only a few dollars, but I want to make this board as affordable as possible and still make a little bit on the side. I hope to make this available at about $20. Something I could afford.myself. 

It will be another couple of weeks before the boards get to me. In the mean time, I will be creating lessons and figuring out how to run a Kickstarter campaign.

Friday, October 03, 2014

More thoughts on what makes it useful.

You know the nice and neatly organized work benches where everything is in its place? I've seen pictures of them too. Like most people, I end up using the kitchen table in a sort of time-share program with the rest of my family and their projects. My daughter's Arduino and parts are kept inside of a small box with an assortment of zip-lock bags to keep her components in. Now unless you are really meticulous and focused, small parts will fall off the table and find a home somewhere under the fridge or get vacuumed up, never to be seen again, and probably not missed until the lesson requires that very piece. I had that problem when I was still in high school and teaching myself electronics. Sure I had a desk in my room, but I also had to do homework and other stuff on that desk,  and it wasn't large enough for everything to have its own place. I was always loosing parts. And often finding them behind some papers in a drawer or lodged in the carpet long after I had biked over to Radio Shack to get a replacement.

Well, even though my trainer board is rather small, it is a lot more obvious than a resistor when it is time to clean up. It gets knocked on the floor, you will find it pretty easily (not the mention probably hear it fall). So there's another rather big benefit.

So I'm thinking educators might find it useful too. After all, can you imagine a class of high school students, even if they all were really interested in the class, keeping track of a box of parts for a whole semester, let alone a year? You might have that one kid that never looses anything manage but on the whole you are going to have to replace a lot of parts. Not to mention the slew of questions the students will have when assembling their first circuits (see my list from my last post!).

Anyway, my potential market keeps growing. Time to order some prototypes.

Thursday, October 02, 2014

So What?

My little board doesn't really do anything, so what is the big deal?

Let's take the first general lesson from any number of micro-controller programming lessons - blink an external LED. And for simplicity lets also use an Arduino in our example. You need to somehow (maybe with a breadboard) connect an LED and resistor in series between the output pin and the ground. Not a complicated circuit, most engineers could do that in their sleep. But if the student has never done anything really with electronics before, think of the questions they may have. Does it matter which way the LED is going? How do you tell what is the right way? Why do you need the resistor? What resistor do you use? How do I find the right resistor? Does it matter which way the resistor goes in the circuit? Does it matter which side of the LED the resistor goes?

Well, with my little board it let's you skip over a lot of those questions and leave that for another day. My daughter wanted to see her program do something, not get a lesson on electronics. Eventually she will want to know how and why that works, but my board skips the boring stuff for now and lets her get on to with the 'making it do something' part. You know - the fun stuff.

So I'm thinking if this helps the learning curve for my daughter, what about others who are more comfortable at a keyboard than at a soldering station? Would others be interested in what I made as well? That's what I am looking into at this point. Leave a comment and tell me what you think.

Wednesday, October 01, 2014

More information

This is the board I came up with. No, it's not much to look at, and it doesn't do much. Just 8 buttons, 8 red LEDs, and two RGB LEDs. But it makes the learning experience a little less time consuming. There is already a resistor for each LED, and all the commons are brought together for one connection to ground on whatever board (Arduino, RPi, etc.). You don't have to 'build' your I/O circuits, just connect them. (but you still have to have some understanding as to how they work).

Now this is just a start. I'm working on some lessons and examples using the Arduino Uno right now, and will start working on some Raspberry Pi examples soon as well.

Stay Tuned!

Tuesday, September 30, 2014

Back from the dead and a new mission

I haven't posted in so long I'm surprised that the account wasn't deleted!

Anyway, instead of posting on the random things in my life, I have more of a mission this time. I've been having some fun learning and teaching my daughter about the new wave of electronics experimenting boards such as the Arduino, Raspberry Pi, BeagleBone Black, and so on. My introduction to electronics was through component-based kits of the 70's and early 80's, and I enjoyed them immensely and they pushed me to become the engineer I am today.

But somewhere in the late 80's and 90's these things fell out of popular view. More and more the idea of interest in electronics was associated with computers and programming than actually building something. Component level electronics faded as a hobby, and even though engineers lamented the fact is just became accepted.

The somewhere in the 2000's the Arduino was introduced. It really wasn't much - just a micro-controller with some support chips and a programming port (RS-232 at first, then USB and even Ethernet on some now) and the I/O pins brought to headers so one could connect buttons and LEDs to it and program it to do stuff. I'm still a bit fuzzy on what all happened because it didn't come across my radar until late 2011 when I had a project at work dropped into my lap involving one.

While I didn't like the project that much (I worked 24 hrs straight to get it done because some moron decided to add features at 4:30 PM the day before it had to work), I was fascinated by this little controller board - it was simple, inexpensive, powerful, and it was limited by imagination more than anything else.

So over the last few years I have been working with various Arduino boards and shields both at work and on my own, as well as designing a couple custom shields for work projects. I got a Raspberry Pi that I found Linux to actually be useful for something (have a few projects in the works for those as well). And one of these days I'll get to play with a BeagleBone as well.

Along the way I introduced my genius daughter to the Arduino with some interesting results. She liked the idea but found the dealing with components frustrating as a beginner. She understood the software side much more than the hardware and constructing a circuit to do what she wanted became too time consuming for her (she reads, writes her own stories, does volunteer work at a local library, and is also into soccer, running, art, chemistry, programming, and well, you see her schedule is a bit busy). So I looked for kits that would make things easier for her to try out her circuits. And what little I found was thorough, but also a bit pricey. There are some good kits out there if you can shell out the money, but what I was looking for was rather simple. And I didn't really want it to be tied to one platform either.

So I came up with a rather simple board with some LEDs and buttons. Nothing really fancy, but usable. So usable I think I might be onto something. I'll post more really soon!