Saturday, October 24, 2015

XprotoLab USB Oscilloscope

UPDATE:
Added Fritzing Diagram and corrected other details.

My friend Larry - KB7KMO put me on to a neat little device - An XprotoLab USB Oscilloscope.

I write most of my Software Projects at my Desk, which is three flights of stairs above my Electronic Shop, below is where my normal 100MHz Oscilloscope Lives. Often a simple voltage measurement or logic level on a Protoboard Project pin or clock line is needed while developing software. A "local" and cheap oscilloscope would be handy.

The XprotoLab USB Oscilloscope is rated at 200KHz and -14v to +20v with Duel Inputs for Analogue Signals, 8 Digital Logic Lines, and Internal and External Sync.  It also provides one Programmable Signal Output. It is powered from the USB, and can provide low-current power at 5v and 3.3v to external circuits, see the online Features and Specification. All of which is fine for my needs and simple measurements.

The XprotoLab USB Oscilloscope comes in several different configurations, I chose the inexpensive $20.00 XprotoLab-Plain configuration. This configuration requires an external Display via a MS Window or a Linux Workstation Application (xscope Free), or a Android Phone/Tablet Application (Oscilloscope Pro $8.00), and there may be other options.

XprotoLab
With my Double Sided Headers Installed
The XprotoLab-Plain comes with User installed simple Headers, but I decided to install my own Double Sided Headers so that the board can be used upside-down with the Pin Labels exposed. Also, regardless of orientation, the double-sided headers provide additional pins for attaching female jumper wires on the exposed side. I am using it on a dedicated Solderless ProtoBoard.
Fritzing Layout Diagram
XprotoLab on Dedicated ProtoBoard
I jumpered the 5v and 3.3v Pins out to the upper and lower ProtoBoard Rails and Added some 470uF Caps. I also provided DC Blocking Capacitors for quick and easy use for Analogue Input signals (depending on which hole the jumper wires are connected).

The software User Interface takes some time to understand, but most things are obvious. Currently I have the XprotoLab hooked up to my Esp8266 Esp13 Project.

Xscope Display on my Linux Workstation
It also seems to works well with both my Android Phone and Tablet.

So far, . . . I am impressed, I like it, . . . it does a great job, Thanks Larry !


-- Home Page: https://WA0UWH.blogspot.com

Monday, October 12, 2015

Esp8266 Esp-13 - Testing

Today I found time to do some Contrived Stress and Speed Tests on my latest ERB-EspWebServer Code, using the Esp8266 Esp-13 module.
  • For the Tests , the Esp-13 was on a local WIFI network, running at 160MHz, with 4MB of 80 MHz Flash.
  • My Workstation is hard wired connected to the same network via a switch.
  • The Http Transfer Protocol used is "CHUNKED".
  • The Automatically Refreshed (4 Second) Home Page was a little over 30KB.
  • My Workstation had 20 Tabs open, each connected to the Esp's Home Page.
  • The included Graphic was showing a steady 15.8KB FreeHeap.
  • The Test Home Page has; Text, Graphs, Charts, and SVG Images, all Dynamically Created for each Http request.
  • Also, during the Test, mDNS was scheduled and updated each 5 minutes, ntp was updated each 30 minutes.
  • Diagnostic Trace and Status was being Created and Displayed on the Workstation Arduino IDE Monitor via USB.
  • My Normal Workstation work (which was unavoidable) was also being done during the Tests.
If I have my maths , data and methods correct, the results is:
( 20Esp Tabs x 30KB ) / 4Sec = 150KB Per Second Created and Transferred

One of 4 Groups of 5 Esp Tabs
The Esp-13 ran for about 1 hour, before I got GREEDY, an attempted to open more Browser Tabs. At about 35 Tabs things started to FAIL, the update page rate was decreasing, and eventually the Esp-13 crashed and rebooted itself.
Typical Monitor Output
That was fun, . . . the Esp-13 was just . . . Smok'ng !!
I am impressed and very happy with the results.

I will soon update my GitHub Repository with the revised and much faster code.

Let me know if you are interested in participating in a Live Internet Stress Test.

The initial Internet Tests (with my friend Jeff) suggests the Home Page will update at about 6 seconds per page over the Internet, with the Auto Update rate set to 3 Seconds. And, which, of course, is going to be very dependant on my end of a very slow network. So far, we have not done any multi-Tab Test.

Soon, for some more Tests, I plan to connect the Esp-13 to a Very Fast Internet Connection at my Son's house, stay tuned for that.


-- Home Page: https://WA0UWH.blogspot.com

Wednesday, October 7, 2015

Esp8266 Esp-13 Programming Fixture

UPDATE:
Updated Image with Chip Bypass Cap


Here is my Esp-13 Programming Fixture in Fritzing format.
Esp8266 Esp-13 Programming Fixture
 The Esp-13 and its Adaptor plugs in place of the dual 9-pin headers, see previous blog page.


-- Home Page: https://WA0UWH.blogspot.com

Sunday, October 4, 2015

Esp8266 - Futzing with Fritzing

UPDATE:
Updated Image with Chip Bypass Caps


My friend Larry - KB7KMO mentioned Fritzing (CAE) in one of his email the other day.

Several years ago, I looked at Fritzing when is was very beta, it was interesting then, but lacked a lot of what I needed for Experimental Circuits and PCB Hobby Productions.

I updated to the latest Revision (0.9.2b), to take another look.

For what I am doing now with PlugBoards (protoboards) it may help with documentation and project sharing.
Esp8266 Esp-11 Programming Fixture
This is my first real Fritzing Project, it is my Esp8266 Programming Board. Note: the ERB-EspWebServer Farm (see previous posts) will similarly be documented in another Post.

I still need to create some custom parts. For the above Image, I have used "place-holders" images for the Power Source, Esp's and Prop Plug.

So far, Fritzing has been a little frustrating, but that maybe just my leaning curve. You will likely see Fritzing used in some of my future Posts.


UPDATE:
To increase brightness of LED, Reduce the value of the LED Resistors (e.g., down to 2.2K).


-- Home Page: https://WA0UWH.blogspot.com

Wednesday, September 9, 2015

Esp8266 - An Unplanned Stress Test

Saturday (9/5) about 5:00pm, I had an interesting and unexpected surprise, HACKADAY publish a note about my ERB-EspWebServer.

As a result, my Blog and the my ERB-EspWebServer Farm were hammered with Internet requests.

With only one Esp8266 Farm Server working (nod169) at the time (others were offline) the request rate was intense. For the next 16 hours the single Esp8266 served about 1650 page requests for 1050 unique visitors. When "choked" with Internet Requests, the Esp successfully rebooted itself (several times), and I only occasionally had to help with a power-on reboot.


The above shows the first 16 hours of the onslaught.

The next day about 10:00am the Internet Requests were still coming in, I had to leave for the day, and therefore had to leave the Esp to its own fate. It eventually crashed, and therefore it was mostly down for the next 24 hours.

Once I returned, the Internet Requests started up again, with a little less intensity. And now, 4 days later, the Esp is receiving about 10 hits per hour, see current/live stats here. So far, the Esp has handled about 3500 requests.

Today I added new code to serve a local "Server Farm Photo" which is about 30KB, it can be seen on the current Esp Server Info Page.

This has been a fun and exciting Experiment of Esp Web Server Load Survivability, the Esp8266 did well for itself !!


-- Home Page: https://WA0UWH.blogspot.com

Tuesday, September 1, 2015

My Experimental Exp8266 Web Sever - is on GitHub

UPDATE:
Here are some interesting links for the Esp8266:


I have put my “ERB Esp8266 Experimental Web Server” on GitHub, at:


My Esp8266 server is “often/sometimes” online at:


The SSID and Passwd are blank and need to be set in the Main.ino file

A shared Visitor Map IdKey is also set in Main.ino, if used as is, any access to your server will generate a “Shared Visitor Map”. In Ham Radio terms, this is called a “Reverse Beacon” to a shared service. Of course, you can request your own private IdKey.

I hope you find it useful as a working example. I have tried to include many pages and functions that I plan to use in my other Esp Projects

NOTE: All web page data is purposefully dynamically created by the Esp8266, except the “Server Farm” image on the InfoPage, and the “Visitor Map” function on the HomePage.

More functions and/or pages will be added as time permits, and I will update the GitHub as necessary.

As maybe expected, the Esp is sometimes fickle, reboot may be needed occasionally.

Feedback is always welcome.


-- Home Page: https://WA0UWH.blogspot.com

Friday, August 28, 2015

Esp8266 Esp-13 to DIP Adaptor

UPDATE:
Added Links and Details

I recently received my homebrew Esp8266 Esp-13 to DIP Adaptors from OSHPark.com. With only a little sanding of the edges they were ready to assemble.

I made the adaptor available as a free "shared project" on OSHPark.com site. They are inexpensive at $4.20 for a set of three. Note: I suggest you order 9 or 12 (or more) to make the free shipping more tolerable for the good folks a OSHPark.

Let me know if you find this adaptor board useful.

The Adaptor and Parts
Soldering the two Castellated Edge Connections was much easier than I thought, with a little rosin on each edge, solder wicked into half-round-holes to form a nice solder bridges between the two boards.

SMT Headers Installed
The SMT Headers were easily soldered on the back. They are inexpensive and available on ebay, for example: here.

Ready to Use
The results can be plugged into a Solder-Less Protoboard, or into a 18 Pin DIP socket. For production, this adaptor would not be appropriate, but for experiments and prototypes, it works great.

Inserted into a Solder-Less Protoboard
The Esp8266 Esp-13 has 4M Bytes of Flash, compared to 512K Bytes on the typical lower numbered modules. Esp-13's are available from several suppliers on ebay. for example: here.

Note: Currently, Esp-13 information is a little sparse on the Internet.

Esp8266 Esp-13 Face Plate
(18 x 20mm)
Esp8266 Esp-13 Pinouts


UPDATE:

An another Esp-13 Resource link


-- Home Page: https://WA0UWH.blogspot.com

Friday, August 21, 2015

More Esp8266 Web Server Farm

I have my Experimental Esp8266 Web Server Farm up and running (see photo on original post), for your continued review, it is even faster, and will support many more browse connections.

With "AutoUpdate" set to 60 seconds, I have had as many as 25 browser tabs connected to one of my Esp servers. It normally eventually fails, that is, when more than 4 connections are requesting updates simultaneously. But it was fun to watch the mayhem. Sometimes the ESP even recovers on its own.

I have now included a "Visitor Map", so I can see where connections are coming from, see below.

There are three Esp8266's in this "farm", all using the identical source code. And because of that; the displayed Visitor Map will appear Identical on each, that is because they all contain the same "map registration key" which is used by http://www.revolvermaps.com.

As indicated on a previous post, access to my farm is via a generic IPA:Port connection, which is: http://dc02.ebcon.com:8160, which I had previously changed in my router as necessary to externally connect to a particular Esp (local IPA:80).

For the other devices in my Esp Farm (and bench), use PORT: 8162, 8168, 8169 and/or 8172 (note: one of these will also be also connected to the generic 8160 port). Note: one or more may not be working at any point in time, try one of the others.

With only my local tests and a little WIFI activity, so far the small and simple power supply has survived, and actually worked well. I may need to add "more power" with more concurrent user accesses.

An Interesting Idea: If other Esp Programmers with similar Experimental Public Accessible Esp Servers include the same "map registration key" (a short line line of Html code) we could create a "pseudo reverse beacon" that would display to the "world" our intense shared interest in the Esp. On each configured Esp Web Servers, the "Visitor Map" will display all web connections to our "Esp Web Collective". How fun is that!!??

Let me know if you are interested, I will share details (or you can extract the keys from my Esp web Home Page source list).

It's all fun, . . . with the ESP's !!! :-)

For more Esp8266 information on this blog use this Search.


-- Home Page: https://WA0UWH.blogspot.com

Wednesday, August 19, 2015

My WIFI Transfer Improvement - 160 Times

UPDATE: Aug 25, 2015

I was using an older revision of the Arduino IDE (old 1.6.4) and an old set of Exp Extensions.

With current IDE 1.6.5 and current Esp Ext's the "server.send()", "server.sendContent()", and "server.client().print()" functions all have about the same performance - fast.

The moral of the story, make sure your environment is up-to-date.



I use, and like, the Arduino IDE for ESP8266 software development and have used the "example code" for my initial efforts, but now, my interest expand beyond trivial examples.

My Experimental Web Server Farm
Above is My Experimental Web Server Farm :-)  (a little under powered, but it works)

Like many of the published ESP examples, I used a form of "server.send()" to transfer data via WIFI, but then I found "that" function is somewhat limited (or at least the way I understand it) and therefore I explored the available documentation and source code for other capabilities.

I found "server.sendContent()" which appeared more flexible and more to my desires for a transfer function. I have used "it" for several months for building my apps. My typical transfers are about 5K to 15K bytes, but can be as large as 100K bytes.

My dynamically created WEB Pages typically take about "6.5 seconds" to transfer to a browser, for a small device like the ESP's, I thought that was a little slow, but still usable.

Actually, for my application, I started considering abandoning the ESP's, due to lack of WIFI transfer speed.

BUT THEN, in some obscure recesses of some online web page, I found the "server.client().print()" function - A BIG SPEED IMPROVEMENT. Now the same dynamic WEB Page transfers in only "0.043 seconds" !!!!

For my application, that is a BIG speed improvement of 160 times faster. From my perspective, the little ESP is now a WIFI "screamer" !!

I really like it, . . . when something WORKS !!

This note is published here in hope that someone else finds this information useful. If previously known, it would have save me a lot of time and anguish.

I only wished I understood or knew this earlier, but then I am still learning the ESP (there is much to know). I am sure there are other ESP improvements or coding strategies that I have yet to discover. I plan to publish my "example" application code for others to review, use, and/or abuse.

For your review, my experimental ESP Web Server is (sometimes) running at:



-- Home Page: https://WA0UWH.blogspot.com

Thursday, August 13, 2015

DipTrace 2.9 Beta

DipTrace has just made available Update 2.9 Beta, which includes several new capabilities or functions. The most interesting/useful to me is "Configurable HotKeys".

I have assigned:
  •       "]" to Object -> "Update All Copper Pours"
  • "Ctl-]" to Object -> "Unpour All Copper Pours"

During the last stages of a PCB edit, my productivity will now jump 1000%.

Previously making small trace-edits to (ensure connections or adjust) of the pours was an extremely tedious task.

Also, I have assigned:
  • "[" to View -> "Mirror"
Now a quick tap of "B" then "[", shows the the bottom side in "normal" flip-the-board-over view, which is very useful when adding Text Silkscreen to the bottom side.

And then, "T" and "[" reverts back to the normal top side view.

Note: A little Silkscreen text on each side helps orient yourself for each side.

And Yes I know "Mirror" has always been there, but it was always a "Pain-in-the-butt" to find it in the drop down menus, and therefore I seldom used it.


Thanks, DipTrace Team !!!


-- Home Page: https://WA0UWH.blogspot.com