Upgrading your car: replacing that old CD Player with a new touchscreen system with Bluetooth and more

AltimaHybridI have a 2007 Nissan Altima Hybrid. It is nothing fancy, and isn’t in the best shape. Oh, the body is in good shape, it needs a little TLC, like paint and other cosmetic fixes.  Creature comfort wise, though, it came with a workable CD/Radio, cruise, power seats and…that’s about it.  Well, I also have a 2007 Infiniti with a lot of bells and whistles.  So, I wanted some of that in my Nissan.  I set about to see what I could do.  I found out that there are A LOT of possibilities.  And, they don’t cost an arm and a leg.  So, I swam through a sea of similar head end units and found one for under $40 (US).  The unit has MP3 audio, SD and USB ports, plays a plethora of video formats, FM Radio, backup camera support, 7 inch, HD touch screen, Bluetooth and supports video in and out.  Wow. For forty bucks.  Well, in order to install this, you need an installation kit. So…I got one of them AND the correct wiring harness for the 2007 Altima with digital enviro controls.  The installation kit was twenty five dollars (US) and fits the car perfectly. 

The items arrived, days apart, of course.  I tested the headend and it appeared to be fully functional so I preassembled the installation kit and mounted the head in the kit.  I then soldered the harnesses so they would be ready.  20181023_201024

Installation was relatively easy…except, the head was about 5 mm too wide and, maybe one mm too high for the kit.  I was able to make it work by trimming the bezel and, since the kit is plastic, was able to slightly bend one bracket just enough to where the mounting holes lined up. The bezel that goes on the front had to be trimmed a bit for the knob.

received_328936107898619Installing the whole thing in the car was even easier.  Pop off the vent cover, pull off the bottom cover (just under the enviro controls and remove the two screws at the top and two at the bottom and pull the unit out.  You then have to remove the environ controls. There is one Torx screw on each side. Take them out, then bend the tabs up that hold it in the cage and pull it out. It snaps into the new cage. Screw the Torx screws back in and then connect all of the harnesses and the antenna.  Put the whole unit back in, screw in the four screws and then put the vent cover back.  Start the car and setup the unit.  Simple. It took me about thirty minutes.

Setup

Setup is fairly easy: tap the setup icon, set the language, FM Frequency, Video standard (NTSC or PAL) and set received_529731680832352the Boot logo if you want (enter 1983 on the keypad and look for your car manufacturer.) You can set the time by tapping on the clock and setting the date and time.  Its a bit cumbersome, but easy to do.

Pairing your phone is simple.  On your phone, look for GTB-KIT or something like CARKIT. You can import your phone book and phone log once paired.  It is the easiest pairing in a Bluetooth device I have seen.

The FM radio has three ‘banks’ of presets. You can let the device do it for you by pressing the PS button on the FM screen. You can then add or delete all you want.  NOTE: there is no AM radio on most of these cheap devices. Mine is the MP5-7023B and looks to be a clone of nearly all of the cheap head ends out there. The user interface, while looking OK, is not that easy to understand. Discoverability is not, apparently, a concern for the developers.

20181023_202611The MP3 player, photo viewer and movie player all require a USB stick or SD card, even though that is labelled ‘TF Card’. You need to create three folders: Music, Video and Photos.  Photos ONLY works with JPG files.  PNG and BMP(!) do not appear to work.  Video works with pretty much every codec and container out there. Music plays MP3, OGG, WAV and a few others.  Oh yeah, FLV video is supported.

I didn’t want the default non-Logo to display when the unit starts, I wanted the Nissan logo. Fortunately, in setup, there is a logo feature that allows you to pick one of couple of dozen or so manufacturer logos. Many are European or Asian and unfamiliar to me.  The Nissan logo was there, so I picked it.  To get to the page, go into setup, tap the Logo button and enter 1983. The page will display. Simply select the logo you want by tapping it.  Hit the Home button to save. Boom, done.

What I don’t like

The user interface is really wonky.  It is pleasant enough, with a kind of Windows 8 look for the home screen.  Lots of blue is used.  This is all fine, but, it is REALLY sluggish.  The touch screen is not very sensitive either.  In bright light, it washed out, big time.  The knob serves many purposes, but is mainly confusing. Not only can you turn it, like a real knob, but you can also push it in. It is context aware, but inconsistent.

The equalizer function works for all music playback, but is only available on screen if you are in the FM Radio app. 20181023_211917 Otherwise, you must press the knob, several times, to get to the very small icon for the EQ, then you turn the knob for one of four or so presets.  You cannot create your own sound, though.

The remote woks great, but, the buttons are difficult to press and you must be in line of sight with the IR receiver. And, why the remote? I would rather have had a steering wheel control.  However, the remote does make navigating the touch screen much easier.

Bluetooth works fine, but the music playback from your phone is not complete. All you get is Previous, Next, 20181023_201049Pause and Play. You get no info about what is playing or the album art. 

What I like

For the price, everything. This thing was forty bucks.  Yes, it is far from perfect and, likely, won’t last.  I am OK with that, as long as I can get six months or more.  I plan to get a nicer one with DVD and GPS, but, this will work in the interim.  Speaking of GPS, I am working on a DIY GPS that will utilize a Raspberry Pi and GPS module I got from Radio Shack, years ago, for my Arduino stuff. The MP5 has an external video input that I will use for the GPS.  I also have a backup camera I am going to install in the car. The unit supports this as well.

If you have an older vehicle that could use an upgrade like this, you can certainly do it on the cheap.  The thing to keep in mind, though, is the installation kit. More common cars, like the Altima, will probably have the kits readily available. Otherwise, you might have to get creative.   All in all, it is a worthy upgrade and didn’t break the bank or take hours to do.

20181023_194524

Advertisements

Building your own programmable clock

20180120_204454Wow, it’s been quite a while since the last posting.  I thought we would start the year off with a cool project, a reboot of my Half-Byte Clock, featuring Embedded Tiny Basic. This time, I use an Arduino Nano and a nice canvas/wooden ‘case’ to house it all.

Instead of using the somewhat large Half-Byte Console board, I use the Nano so it fit inside the wooden frame. The frame is roughly one inch thick, just big enough for the Nano and all of the components to fit. On this particular iteration, the light sensor and speaker are on the back of the frame and, because of poor planning, the temperature sensor sticks out of the side. I intend to remedy that, but that will be later.  I am too busy to worry about that right now.

The Components

For the project, you will need:Samsung 6980

    • Arduino Nano or similar 328 based microcontroller board
    • HC-06 Bluetooth module
    • DHT-11 Temperature sensor
    • Light Sensor (I used the OSEP LIGHT 01 module)
    • Two or Three 8×8 LED Matrix displays, assembled with controller
    • DS3231 RTC for Arduino (Real Time Clock)
    • Small speaker (I stole this out of a toy cell phone I purchased at Dollar Tree)
    • Case/Frame/Canvas

My total cost is about twenty five dollars. The most costly part was the canvas frame-$8.95 at Target. All other parts were sourced from Hobby Town or Amazon.

Features

The clock features programmability via Half-Byte Embedded BasiSamsung 6945c, though you can use whatever code you like. This project, though, is aimed at a reprogrammable device that can display the time/date, temperature/humidity, output sound, use the ambient light to brighten or darken the display and be programmable over Bluetooth.  You have about 1k of RAM to store your Basic code and, once saved, will remain in memory, even if you unplug it. Upon power up, if there is something in memory, it will auto start after five seconds.

Wiring it Up

I was going to get all fancy and draw a diagram, but I think the pin connections will make more sense to more people, so that’s what I am going to do.  There are also photos you can look at.  As my hands aren’t as steady as they once were, my soldering leaves a lot to be desired.

DHT 11:

  • Data line to pin 2 of Nano
  • (+) to +5v on NanoSamsung 7010
  • (-) to GND on Nano

 

RCT:

  • SCL to A5
  • SDA to A4
  • GND to GND
  • VCC to +5v

 

Light Sensor:

  • Pin S to A0 on NanoSamsung 7008
  • (+) to 3.3v on Nano
  • (-) To GND on Nano

 

LED Array:

  • data to pin D12    DIN pin of MAX7219 module
  • load to pin D10    CS pin of MAX7219 module
  • clk to pin D11       CLK pin of MAX7219 module

 

Speaker:

  • GND to GND
  • + to Pin D8 on NanoSamsung 7014

 

HC-06 Bluetooth:

  • VCC to +5v
  • GND to GND
  • RX to TX on Nano
  • TX to RX on Nano

Sample Embedded Basic Startup Apps:

Example 1:

100 PRINT "Welcome to Half-Byte LED Programmable Clock"
110 SCROLL " HALF-BYTE  "
111 SCROLL " Clock."
112 IF HOUR(0)<12 SCROLL " Good Morning! "
114 IF HOUR(0)>11 IF HOUR(0)<18 SCROLL " Good Afternoon! "
116 IF HOUR(0)>17 IF HOUR(0)<=23 SCROLL "  Good Evening!  "
120 TIME
125 IF IN(0)<>-1 GOTO 600
130 SCROLL ".   Temp is "
140 TEMP
145 SCROLL "F  "
150 SCROLL "Humidity is "
160 HUMID
170 SCROLL "  Hello!  "
180 IF IN(0)<>-1 GOTO 600
190 IF RND(99)>50 GOTO 110
200 SCROLL "       "
205 O=MINUTE(0)
210 W=15
220 H=7
230 X=RND(W)
240 Y=RND(H)
250 P=RND(W)
260 Q=RND(H)
265 IF IN(0)<>-1 GOTO 600
290 SET X,Y,0
300 SET 16+(X),Y,1
310 SET 16+(X),H-Y,1
320 SET 16+(W-X),Y,1
330 SET 16+(W-X),H-Y,1
340 IF IN(0)<>-1 GOTO 600
350 SET 16+(P),Q,0
360 SET 16+(P),H-Q,0
370 SET 16+(W-P),Q,0
380 SET 16+(W-P),H-Q,0
390 IF IN(0)<>-1 GOTO 600
400 K=MINUTE(0)
410 IF K-O>1 GOTO 110
590 GOTO 230
600 SCROLL "DONE  "

Example 1 will randomly display random dot pattern for about a minute. It also analyses the time and inserts ‘Morning’, ‘afternoon’ or ‘evening’ in the greeting.  If you are connected via USB or Bluetooth, you can interrupt the app by sending a character followed by the ENTER key.

EXAMPLE 2:

200 SCROLL "        "
210 W=15
220 H=7
230 X=RND(W)
240 Y=RND(H)
250 P=RND(W)
260 Q=RND(H)
300 SET 16+(X),Y,1
310 SET 16+(X),H-Y,1
320 SET 16+(W-X),Y,1
330 SET 16+(W-X),H-Y,1
340 IF IN(0)<>-1 GOTO 600
350 SET 16+(P),Q,0
360 SET 16+(P),H-Q,0
370 SET 16+(W-P),Q,0
380 SET 16+(W-P),H-Q,0
390 IF IN(0)<>-1 GOTO 600
590 GOTO 230
600 SCROLL "DONE  "

Example 2 is the kaleidoscope from Example 1

EXAMPLE 3:

100 SCROLL " Half-Byte Clock "
110 H=HOUR(0)
120 IF H<12 SCROLL " Good Morning! "
130 IF H>11 IF H<18 SCROLL " Good Afternoon! "
140 IF H>17 IF H<=23 SCROLL "  Good Evening!  "
150 TIME
160 IF IN(0)<>-1 GOTO 600
170 SCROLL " Temp is "
180 TEMP
190 SCROLL "F  "
200 SCROLL "Humidity is "
210 HUMID
215 SCROLL "%         "
220 SET 20,2,1
230 SET 23,2,1
240 SET 20,4,1
250 SET 23,4,1
260 SET 21,5,1
270 SET 22,5,1
280 FOR X=1 to 5
290 DIRECTION 2
300 SCROLL"  "
310 DIRECTION 1
320 SCROLL"  "
530 IF IN(0)<>-1 GOTO 600
540 NEXT X
580 SCROLL "       "
590 GOTO 110
600 PRINT "INTERRUPTED "

Example 3 displays the date and time as well as the humidity and temp. It also shows an animated smiley face.

EXAMPLE 4:

100 SCROLL ” Half-Byte Clock ”
110 H=HOUR(0)
120 IF H>=0 IF H<12 SCROLL ” Good Morning! ”
130 IF H>11 IF H<18 SCROLL ” Good Afternoon! ”
140 IF H>17 IF H<=23 SCROLL” Good Evening! ”
150 TIME
155 IF H=17 IF MINUTE(0)>=0 IF MINUTE<=10 SCROLL ”  TIME FOR name TO COME HOME!”: TONE 8,3000,3000
160 IF IN(0)<>-1 GOTO 600
163 SCROLL ” ”
170 SCROLL “Temp is ”
175 TEMP
177 SCROLL “F  Humidity is ”
180 HUMID
190 SCROLL “%”
200 SCROLL ”   ”
220 SET 20,2,1: SET 23,2,1
240 SET 20,4,1: SET 23,4,1
260 SET 21,5,1: SET 22,5,1
280 FOR X=1 TO 5
281 DELAY 40
290 DIRECTION 2
300 SCROLL ”  ”
310 DIRECTION 1
320 SCROLL ”  ”
530 IF IN(0)<>-1 GOTO 600
560 NEXT X
580 SCROLL ”       ”
590 GOTO 110
600 SCROLL “Interrupted!”

Example 4 is an example of an ‘alarm’. It evaluates the hour and minute and displays a custom message and then generates a tone. It also features the animated smiley.

Samsung 7025With some clever coding, you could write a game, create an interesting art display, message board and more.  There are unused pins on the Nano that you can also use to wire up something to control (like a pet watering device, lights, etc.)  All of the sensors are available in Basic or, if you choose to write your own custom code, use the pin outs above to read or write to them. You are only limited by your imagination. And, well, that tiny bit of RAM that these things have. C’mon, we went to moon on less.

Using Half-Byte Embedded Tiny Basic to Teach

HBPortableLabIt is 2017 and we have a slew of low cost or free tools available that teach anyone how to program a computer.  Just for Windows, we have something called Small Basic, from Microsoft. It is free and has a bunch of material you can use to teach anyone, especially children, how to code. There is also Python, Minecraft and a host of other, modern tools.

So, why use something as crude as Tiny Basic? One that requires a terminal? Well, there are a few reasons you may want to do this.

Cost, for one. 

It is free. It runs on Arduino and Arduino clones.  You can use it to also teach basic electronics.

And, that is what I am doing…using it to teach not only programming, but also how computers work.  It is really more for the latter as Small Basic cannot manipulate sensors and other hardware like Tiny Basic can.  Since Tiny Basic includes instructions for reading temperature sensors and a real time clock, it is perfect for teaching things like turning on something on if the temperature gets above a given number or it if is 5 o’clock, turn off something.

I recently started doing this with my step son.  We used Embedded Tiny Basic on my ‘portable’ lab, which contains an Arduino UNO clone, a 2 x 16 LCD, breadboard and voltmeter.  We first made one green LED blink, then added a second, red LED blink.  I used Tiny Basic to explain how to talk to the LED’s and used the DELAY instruction to make the LED’s blink at a constant interval.  I also took the opportunity to teach him binary.  We had discussed it previously, but I don’t think he really got it. Until now.  Using the DWRITE statement, which takes two parameters…pin number and a zero for off or 1 for on.  Having him use that code got him to understand the concept.  Small steps.

His mind is wandering now…’I can build a robot…a game…something to tell me when Xander is coming down the hall…’ Xander is his four year old brother. 

There are those of you out there who are thinking that this is a terrible idea, using Tiny Basic, that is.  Well, no, not really.  He is getting real instruction with a more object oriented and modern language while using Tiny Basic to learn the nitty gritty of the hardware.  You do not need a modern, object oriented language to blink an LED. 

I will post future updates on our progress as well as sample code.  Below is the code we used to blink the LED’s.

100 PRINT “INTERVAL”;: INPUT I
110 FOR X=1 TO 50
120 DWRITE 3, 1
130 DELAY I
140 DWRITE 3,0
150 DELAY I
160 NEXT X

(For single LED-it was on digital pin 3)

Hello, Samsung! My new journey with Android and Samsung-the Galaxy S8

Long time readers know I am a huge Windows Mobile 10 fan. I’ve had a Windows Phone/Mobile device for nearly four years and, prior to that, I had a Windows Mobile 5 device (a Motorola Q) waaaay back in 2008. Needless to say, I like Microsoft’s mobile operating systems. I had an Android phone in 2011 and then got an iPhone 4 when Sprint started carrying them. I NEVER liked that Android phone or the OS itself. I tended to crash and always told me I had filled up its storage even when there were gigabytes left on the SD card. It was slow too, much slower than my Palm Pre, Moto Q or that iPhone. Android was terrible. I said good bye and that was that.

Well, fast forward a few years and my beloved Windows Mobile 10 is, sadly, being left behind by its own creator. It never caught on with the public or with business, even with the hooks that business wanted. Sadly, it was an iOS and Android world.

Earlier this year, I spent a ton of money on an Alcatel Idol 4s with Windows Mobile 10. It is a fantastic phone, but developed an audio issue…I couldn’t hear phone calls unless on speaker phone. Apps I was using were being abandoned. I decided I needed to byte the bullet and move on. I can still use the phone, as a desktop device due to Continuum. But, what would replace such a capable phone and OS?

I read about Samsung’s Galaxy S7. Seems like a great device. But, then I discovered the S8 was out and was even more capable. So…I got one. Discounting the awful experience I had getting the phone (T-Mobile is far worse, customer service wise, than any other carrier…but, that is another story) the transition from Win Mo 10 to Android Nougat was much easier than I had thought it would be. The first thing I did was to Microsoft my phone. I installed the Arrow launcher, install Office, install Cortana, setup OneDrive, install Bing, set Bing as my default search engine, made sure the fluffy Google crap was off or uninstalled and installed SwiftKey. I tried some of the Win Mo 10 like launchers, but, ultimately, went to Arrow and its more Androidy look. The Win Mo 10 Launchers work well, but, I decided to make Arrow my default as it is developed and supported by MS and it works very well. No crashes.

So, how do I like the S8?
Well, it is superb. Fast, shiny, feels good and looks great. It is a tad more narrow than I would prefer, but that is a small thing and easily overlooked. Battery life is decent, but I think older Alcatel Fierce XL had better battery life. The curved, infinity screen is fine, but I am not sure I like the infinity screen: I inevitably do something I didn’t want to do. I do not think the curved sides are all that useful either. I’ve not seen anything that really utilizes them.

The fit and finish is superb. This phone feels like it is expensive and looks like it as well. Of course, it is expensive, around $600 to $800 (US). I really like the hardware. It is fantastic.

What about Android?
Well, I still hate Android, just not as much. I could grow to like it. In time. Maybe.

What’s good about Android?
This is a bit hard as there are certain things I really like, but I am not sure they are actually Android or Samsung developed. For instance, I like the softkey bar. home button, task button and back button are easily accessible and get out of the way when not needed. I am not sure if this is stock Android or Samsung. It’s nice, though. I also like skinning ability, but, again, I see more Samsung than Android. I know Android can do this, just not sure how much is one or the other. Android also seems to be more stable than I recall. The notification system is fantastic, but a pain in the rear as well. I think, overall, Android has come a very long way. BUT…it is still ANDROID and not Windows Mobile and therein lies most of my problems with it.

What’s bad about Android?
It is not Windows Mobile 10. Windows Mobile 10 had its live tiles, was so much easier to navigate and Edge has turned into an excellent mobile browser. Integrated Cortana worked well. Android is none of this. ‘OK, Google’ is a joke. The deafness of the launcher screens, the navigation is not very intuitive and the overall appearance of Android-while better than in the past-still has a long way to go. Material Design seems to be missing and Google Services do not seem to be any better than those from Microsoft or–gasp–Apple. Except for one big exception.

So, what’s the exception?
Google Photos is top notch. I really like this service. To steal a saying from Apple…it just works. It works when I do not ask it to do so. And, the results are very impressive. I thought Microsoft Photos, with the new video storyteller, was going to be best in class. I was wrong. Microsoft’s new Photo additions are great, but this service is even better. Try it. You. Will. LOVE IT.

So, I am out of the Windows Mobile ecosystem, probably for good. I don’t know how long I will be an Android user, but, if things continue the way they are, I don’t see myself going anywhere else for a very long time.

Microsoft’s deception: the Photo’s app in the post-creators release

Frustration.  That’s the word to describe what it can be like to be a Windows Insider.

Awesome! Another word to describe what it is like to be a Windows Insider.

The two words are, generally, not used at the same time to describe the experience.

Recently, however, that was, in fact, the case.

As an Insider, when Microsoft introduces new features or changes to Windows and asks the Insiders to bang away, we trust that the feature we are asked to go test is, you know, actually there.  Such was the case, very recently, when new features were added to the Photos app in Windows 10.  Microsoft made a huge deal out of the new features: ability to create a sharp video out of video clips and photos. It could pair it the right music and will have the ability to inject 3D objects that could interact with the objects in the video. It looked spectacular.  But, as it was to be an early release, not all features would be immediately available.  As it turned out, many insiders didn’t get the new features at all. See, what Microsoft failed to reveal was that a subset of Insiders were prevented-so the story goes-from getting the new stuff, on purpose, to serve as a ‘control’.  Now, why they needed this ‘A/B’ test is beyond me. I could see it for, say, different file systems–see who it worked on better, compared to a control population, but not for a feature so prominently featured in the BUILD 2017 conference. It was covered by all of the tech press and non-tech press.  One would think they would want maximum coverage. It is a cool feature.  But, no.  Microsoft saw fit to hold it back from many, including myself.  For reasons I don’t yet understand.  We were able to get the new bits, after emailing a request, signing a eula and waiting. A really nice, and patient, young lady helped through the ridiculous exercise. I finally got the features almost a week later. I was beginning to think it was bogus and only a few journalists had received it.  This is yet another example of Microsoft’s inability to capitalize on anything. While the features are pretty good, the experience is sub par because of what I had to go through.

So, that was the frustration part.

The more I use the new features, though, the second word comes into play.  Simply put, the new features are awesome with the best still to come. The slickness of the resulting video is striking and the ability for the application to pull out snippets of video is just cool. So, once I did get the new bits, the awesomness took over.

While the resulting goodness of the new Photos app is clear, and I appreciate the help the young lady provided while trying to get the new bits, it does not excuse the bait and switch that Microsoft subjected us to, nor does the lame excuse they gave.  Seriously? An ‘a/b’ test on a PHOTOS app? Really?

 

 

Verizon takes an OATH: the death of AOL and YAHOO!

Two of the Internet’s oldest and most well known names, Yahoo! and AOL, will soon cease to exist.  With their purchases by Verizon, both companies will be merged into something called OATH.  While it remains to be seen just how well the combined company will do, one is for certain, neither company is anything like the companies we knew and loved or loathed, back in their heyday.

Indeed.

Yahoo! was THE search site. Period.  It was the Google of the late nineties and very early double-aughts. If you needed to find something, you went to Yahoo!.  I used Excite, a lot, but, like today and Bing, I found myself always using Yahoo!  Then, at some point, it became Yahoo! Powered by Google.  What? What’s this ‘google’?  I know it is a very big number that Carl Sagan used to talk about…but, what’s this ‘powered by google’?  So, I used Yahoo! to search for google.  The aforementioned number was the top choice, then…Google.com. I click the link and…viola! This empty page, except for the search bar and ‘google’ popped up.  Well, it looks like Yahoo! has company.  I eventually gravitated to Google for my searches.  Excite went belly up, as did most of the other search engines.  But, Yahoo! and Google were there.  Oh, this ‘MSN Search’ thing too…it eventually became useful and its name changed to Bing!, but that was years later.

Yahoo! lingered on…buying up hot properties in a desperate attempt to remain relevant, but…to no avail.  It became relegated to a collection of has-been properties, a few of which are still regarded in some fashion.

Only a few short years ago, Yahoo! was worth tens of billions of dollars.  Microsoft offered something like thirty billion to buy them, but then-CEO Jerry Yang figured that he could get ‘a better deal’ and held out.  He didn’t. He lost his title.  Marissa Mayer was brought in to right the ship…she couldn’t either.  Verizon got it for a tenth of what Microsoft had offered, not even a decade ago. I won’t even talk about the lack of security. Yikes.

America Online.

What can I say? I loved AOL.  I joined in 1992.  It was my favorite past time, well, other than a certain type of human interaction, that is.

Wow, just think, I could click a button, this loud, screaching sound came out of somewhere and, in a minute, I was ONLINE!  I had all kinds of things to do…look stuff up, download pictures, software, source code, short video clips…man, that was cool.  Sure, it took a LONG time to download files that, today, are smaller than most images on a web page, but, this was the early 1990’s and the Internet was new and not widely available. Bulletin boards were the hot things and these ‘chat rooms’ on AOL…yeah, those were cool. Perhaps the ability to share my knowledge with anyone was my favorite thing to do ‘online’.  I had written several demos and applications in this Visual Basic for DOS thing that was, for a few days, HOT.  Yep, HOT.  At least in the VB ‘room’ on AOL.  My demos and app were downloaded were downloaded…what, a dozen times.  Wow.  There was one demo, a phone dialer, that was downloaded about fifty times…I thought I was IT. Yep, fifty times. How freaking cool?

Well, as time went on, this Internet thing got big. REALLY BIG. And so did AOL.  AOL WAS THE INTERNET. For many, many people.  Think about that.

By 1998 or 1999, AOL was bigger than most tech companies. So big, in fact, that it bought Time-Warner Communications in 2000.  What a colossal mistake.  What AOL never counted on was the quick adoption of  high speed internet.  And the internal resistance within the Time Warner part of the company was overwhelming.  “these snot nosed punks aren’t coming in here to tell me what to do.”

By 2005, AOL was dead.  At least, to most they were. The company was still doing OK. It eventually spun off from Time Warner.  It became a collection of popular blogs and, believe it or not, they still had a sizable dial up customer base.  However, it wasn’t enough.

Verizon bought them.

And, now, they will be called Oath.

Admittedly, there’s a certain nostalgia surrounding both companies. That sound from-whatever-when you logged into AOL.  The anticipatory ‘You’ve got mail’. The excitement when the AOL home screen popped up (and, boy, that original DOS AOL client was both beautiful and cool) and, later on, the AOL Browser.  Yahoo! on AOL.

You know, now that I think of it, I kind of miss that sound from whatever and that anticipatory ‘You’ve got mail.’  Only kind of, though.

 

Embedded Tiny Basic Updates are Coming

I am in the process of updating Half-Byte Embedded Tiny Basic.  The new Volt function, the Year function and a few other enhancements are on the way.

As with HB Tiny Basic 3, the Volt function returns the system reference voltage:

200 V=VOLT(0)
210 PRINT "Voltage is ",V,".",V%1000

So, if your reference voltage is 4.930 volts, the VOLT function would return:

4930

The code snippet above would return:

Voltage is 4.930

Year(0) simply returns the current year if you have an RTC attached.

Other enhancements will include:

  • Support for limited LED animation
  • MOTOR control
    
  • Ability to utilize a light sensor to dim the LED array based on lighting in 
    the area.
    
  • Keypad support

And, one idea I am toying with–and it would depend on the amount of free space left–is some limited support for an LCD screen. I have not yet decided if it would be of the 2×16 variety or something like a Nokia 5110.  Again, it depends on the amount storage that is left.

Tokenizing the language would save a ton of SRAM for your apps, so I am looking into doing this as well.  I have been looking at how others do it and I don’t think It would be very difficult to retro fit it into the language. Of course, I could just start over…