jump to navigation

Some Videos of My Projects March 5, 2012

Posted by jinzaistudio in jinzai-studio.net, Michael T. Blake, Parallax Propeller, personal, programming, Uncategorized.
add a comment

Binary Counter Running on a Parallax P8X32A Quickstart Board:


Beat Frequency Soundscape for relaxation/Meditation:


Powerpoint Presentation on Beat Frequencies:


Quick Experiment with H-Bridge Motor Control Using Parallax Propeller Microcontroller and DC Motor

PWM Experiment


NMEA Input Message 100 SetSerialPort March 5, 2012

Posted by jinzaistudio in ASP.NET 3.5, jinzai-studio.net, Michael T. Blake, Parallax Propeller, programming, rocketry, Uncategorized, Visual Basic.
add a comment

This post relates to the National Marine Electronics Association (NMEA) Standard 0183 v2.2. Specifically, it addresses Input Message 100, SetSerialPort, which is used to alter the communications rate of Global Positioning System (GPS) devices. The device used to generate this document is a SiRF PMB-688 and it is connected to a Parallax Quickstart P8X32A Development Board. These are available from Radio-Shack for $39 at the time of this writing, or from Parallax directly. The PMB-688 is likewise available from Parallax. The two links will take you to the product pages for the devices.

Changing the speed is a simple process. The PMB-688 is typical of GPS receivers in its class in that it defaults to 4800bps, 8 data bits, 1 stop bit and no parity. The speed can be changed by sending an ASCII text string with the properly formatted message, checksum and a terminating carriage return/line feed pair. The only real task is generating the checksum, which while not at all difficult, is poorly and often incorrectly documented which leads to many applications suffering from a severe underflow of GPS data. Below is a list of complete strings for accomplishing the change, followed by the VisualBasic.NET routine for calculating a checksum and adding it to the message text that was used to generate the list.

NMEA Mode:

  • $PSRF100,1,4800,8,1,0*0E
  • $PSRF100,1,9600,8,1,0*0D
  • $PSRF100,1,19200,8,1,0*38
  • $PSRF100,1,38400,8,1,0*3D
  • $PSRF100,1,57600,8,1,0*36
  • $PSRF100,1,115200,8,1,0*05

SiRF Binary Mode:

  • $PSRF100,0,4800,8,1,0*0F
  • $PSRF100,0,9600,8,1,0*0C
  • $PSRF100,0,19200,8,1,0*15
  • $PSRF100,0,19200,8,1,0*39
  • $PSRF100,0,57600,8,1,0*37
  • $PSRF100,0,115200,8,1,0*04

* The string must be followed by a terminating carriage return/line feed pair.

VisualBasic.NET listing for calculating the checksum and adding to the command string:

PublicFunction CalculateNMEAChecksum(ByVal theCommandString AsString) AsString

    Dim theList AsNew List(OfByte)

    Dim theChecksum AsByte = 0

    For x AsInteger = 0 To theCommandString.Length – 1

        If theCommandString(x) <> “*”AndAlso theCommandString(x) <> “$”Then

theList.Add(Convert.ToByte(Asc(theCommandString.Substring(x, 1))))



    Dim theBytes() AsByte = theList.ToArray

    For i AsInteger = 0 To theBytes.Length – 1

theChecksum = theChecksum Xor theBytes(i)


    Return theCommandString & theChecksum.ToString(“X”)


Welcome To My Blog March 1, 2012

Posted by jinzaistudio in Aerotech Initiator, ASP.NET 3.5, astronomy, jinzai-studio.net, Michael T. Blake, Parallax Propeller, personal, printed circuit board, programming, rocketry, Uncategorized, Visual Basic.
add a comment
jinzai studio icon


My name is Michael T. Blake. Welcome to my blog. Here you will find much of the same material that I have been posting to my Facebook accounts as well as material that I will post to my website. This blog is part of getting my brand out into the Internet and also, it gives me the opportunity to share things I am learning with many people. I like that very much.

The image to the left is my new jinzai-studio.net logo, in work. I have been quite busy developing the site and code for image processing and also for making printed circuit boards to further some other projects that I have going on right now. Let me tell you about some of them.      I am a software developer. I write code in Microsoft Windows, mostly. I prefer C++, but unmanaged code is becoming rare and VisualBasic is a great managed code language, so I have been using that for the last 5 years, or so. I also use DarkBasic Professional for DirectX programming and I also use Parallax Propeller microcontrollers on many of my projects.      My website, jinzai-studio.net also documents some of my work and I develop it myself using VB.NET (ASP.NET 3.5) and SQL Server 2008. I am using some old school DB access methods, but LINQ to SQL is what I use most of the time.      I also enjoy rocketry and astronomy, as well as the Earth sciences, like geology and meteorology. I just built an Aerotech Initiator which will fly in the G class. Next, I am going to shoot for my High Power Level 1 certification. I would really like to see one of my projects ‘slip the surly bonds’ and enter into space.      The first few items in this feed will relate to the rocket, the site and my printed circuit board system and projects related to those things. I also intend to demonstrate some useful code examples and hopefully explain it so that you can take the knowledge and use it to your advantage. I can tell you right now that if you can wrap your head around the .NET Graphics class and Bitmaps, you can easily write your own image processing and image manipulation/generation software.