Ron Harding Exhibits
Figure 1 - BlackBerry HIHO/RIRO state machine
Ron Harding Exhibits
Figure 2 -PID controller test circuit
Ron Harding Exhibits
Figure 3 - FPGA cyclone 3 layout
Ron Harding Exhibits
The below module takes a uSD flash card where it has RS232 protocol interface with just TTL logic interface. So you can access and
configure it via any terminal emulator. The complexities of the SD card protocol are removed by the on board controller so you can
focus on your implementing your functionality. This might be considered to be a typical example of types of circuit that I work on;
not really circuit design, but taking these modules and interface to c# control applications. The DLP2232M is the dual port USB
device that allows for various bit bang modes and what they call Multi Protocol Synchronous Serial Engine(MPSSE). With this you
can do I2C, JTAG, SPI and bit bang modes. The semiconductor OEM of the 2232 has now come out with 4 port model. I have
created a design spec. level document for this project.
Figure 4 - uSD flash card drive test circuit
Ron Harding Exhibits
I
2
C
+5V
SDA
SCL
GND
p
w
r
+5V
+3.3V
GND
C
H
4
C
H
3
C
H
2
C
H
1
USB
USB
PWR
JTAG
1
2
GND
TCLK
VCC
TDO
TMS
n/a
n/a
n/a
TDI
GND
OUT2
OUT1
SEC-CON
DAC2
PWR
DAC2
REF
DAC2OUTDAC1OUT
DAC1
REF
DAC1
PWR
C
ypress
FX2
ALTER
A
C
YC
LO
N
E
II
FPG
A
24LC64
EEPROM
Figure 5 - SAXOQ - 4 channel DSO scope
Ron Harding Exhibits
Diamond K400
mount
Figure 6 - IC7000 installation – HAM radio install into my Xterra 2009
Ron Harding Exhibits
Setup.timer
Select the number of game rounds then press START
START
gameTime.Start()
Players = myRandom.Next(7,10)
NonstaticFunctions class
GetNextSessionPlayers()
GetAssignedPlayers()
Build player array
Assign random number to each member of the player array – 1 to 10000
GetDominantPlayerQueueHandler()
Int[] myAssignedPlayers = GetAssignedPlayers(sessionPlayers) – get the game session assigned players
GetDominantPlayer.Enqueue(myAssignedPlayers[]) – push all assigned players onto the queue for evaluation
Have we
examined all
players?
NO
YES
Remove two assigned players from the queue for evaluation
Evaluate pair of players to see which is HIGHER
A local ‘sessionWINNER’ has been found!
People = People – sessionplayers == get a new People count for next run
GameSession()
Sessionplayers = GetNextSessionPlayers() – calculate number of players in new game session.
sessionWINNER = GetDominantPlayerQueueHandler() – find the player that has the HIGHEST assigned number
GameSession() – start a new game session,
GameDataRecorder() – record the results of each game session
AND keep a running summation of total game time duration
Make gameTime random to make
simulation more realistic
After last detected game session, record results to date-time stamped
file in new date-time stamped folder.
Figure 7 - c# based game that I created for a technical screen
Ron Harding Exhibits
Standard tests
( by default all 3 tests will be selected
automatically, the 3 tests are RI/RO
test, long call test and HI/HO test).
* The default parameters for RI/RO
test are 25 attempts, 2 min wait
time between attempts.
* For long call default parameters are
0dB attenuation level. 30 min call
duration, # of long calls to be made,
and preprogrammed radio number)
* For HIHO the default parameters
are, number of attempts = 25, wait
time between attempts = 2 min,
preprogrammed radio number, call
duration 2 min.
Custom Tests
( user can chose which of the 3 tests to run)
* options for RIRO test. # of attempts = 10,
25, 50, 100, 200, 500, wait time between
attempts = 2, 5, 15, 30 minutes.
* options for long call test. # of calls to be
made 3,6,9,12,15,18,21. Call duration =
10,20,30 minutes. Signal region, hi (0dB),
medium ( 15dB), low ( 30dB) attenuation. If
user selects 6 calls, and selects medium and
low region, the system will make 3 calls at
0dB and 3 calls at 30dB attenuation level. If
user selects all 2 levels, then it will make 2
calls on each level. Plus ability to select the
phone # to be called.
* options for HIHO test. # of attempts = 10,
25, 50, 100, 200, Wait time between attempts
= 2, 5, 15, 30 minutes. Ability to select the
phone # to be called. Call duration = 2 min.
User selects standard tests or custom
tests. The standard tests don’t provide
any configuration for user, the custom
test provide configurable options. User
enters Handset model
User selects the handset to be tested (
Blackberry, samsung, Nokia, Motorola,)
and enters HS MAC, FW # , AP model
#, FW #, Test engineer name and
location. All this info is logged in the log
file for the test.
Handset
initialization page
System will send AT commands to
the selected handset and display,
connected status, Battery status,
GSM RSSI, MSISDN, serial #,
These results are displayed and
also logged in log file.
Graphic display
* GSM/UMA status
Test Setup
* list of tests to be run
* Initial delay ( for every test
there will be 1 minute delay
before start)
Test Execution
* Button to start/stop test
* Test progress bar
* List of selected tests and
their status. ( waiting,
running, etc)
* Results summary for each
test.
Continuous Looping functions
* AT command call status ( only for tests
that make a call)
* AT commands for GSM signal strength
* AT command for battery capacity
* sniffer parsing
* capturing & saving UMA logs
* checking link status between HS and
laptop.
Automated handset test
Figure 8 - Handset functional test development – initial concept based on interview with users and supervisor

Ron harding projects & figures

  • 1.
    Ron Harding Exhibits Figure1 - BlackBerry HIHO/RIRO state machine
  • 2.
    Ron Harding Exhibits Figure2 -PID controller test circuit
  • 3.
    Ron Harding Exhibits Figure3 - FPGA cyclone 3 layout
  • 4.
    Ron Harding Exhibits Thebelow module takes a uSD flash card where it has RS232 protocol interface with just TTL logic interface. So you can access and configure it via any terminal emulator. The complexities of the SD card protocol are removed by the on board controller so you can focus on your implementing your functionality. This might be considered to be a typical example of types of circuit that I work on; not really circuit design, but taking these modules and interface to c# control applications. The DLP2232M is the dual port USB device that allows for various bit bang modes and what they call Multi Protocol Synchronous Serial Engine(MPSSE). With this you can do I2C, JTAG, SPI and bit bang modes. The semiconductor OEM of the 2232 has now come out with 4 port model. I have created a design spec. level document for this project. Figure 4 - uSD flash card drive test circuit
  • 5.
  • 6.
    Ron Harding Exhibits DiamondK400 mount Figure 6 - IC7000 installation – HAM radio install into my Xterra 2009
  • 7.
    Ron Harding Exhibits Setup.timer Selectthe number of game rounds then press START START gameTime.Start() Players = myRandom.Next(7,10) NonstaticFunctions class GetNextSessionPlayers() GetAssignedPlayers() Build player array Assign random number to each member of the player array – 1 to 10000 GetDominantPlayerQueueHandler() Int[] myAssignedPlayers = GetAssignedPlayers(sessionPlayers) – get the game session assigned players GetDominantPlayer.Enqueue(myAssignedPlayers[]) – push all assigned players onto the queue for evaluation Have we examined all players? NO YES Remove two assigned players from the queue for evaluation Evaluate pair of players to see which is HIGHER A local ‘sessionWINNER’ has been found! People = People – sessionplayers == get a new People count for next run GameSession() Sessionplayers = GetNextSessionPlayers() – calculate number of players in new game session. sessionWINNER = GetDominantPlayerQueueHandler() – find the player that has the HIGHEST assigned number GameSession() – start a new game session, GameDataRecorder() – record the results of each game session AND keep a running summation of total game time duration Make gameTime random to make simulation more realistic After last detected game session, record results to date-time stamped file in new date-time stamped folder. Figure 7 - c# based game that I created for a technical screen
  • 8.
    Ron Harding Exhibits Standardtests ( by default all 3 tests will be selected automatically, the 3 tests are RI/RO test, long call test and HI/HO test). * The default parameters for RI/RO test are 25 attempts, 2 min wait time between attempts. * For long call default parameters are 0dB attenuation level. 30 min call duration, # of long calls to be made, and preprogrammed radio number) * For HIHO the default parameters are, number of attempts = 25, wait time between attempts = 2 min, preprogrammed radio number, call duration 2 min. Custom Tests ( user can chose which of the 3 tests to run) * options for RIRO test. # of attempts = 10, 25, 50, 100, 200, 500, wait time between attempts = 2, 5, 15, 30 minutes. * options for long call test. # of calls to be made 3,6,9,12,15,18,21. Call duration = 10,20,30 minutes. Signal region, hi (0dB), medium ( 15dB), low ( 30dB) attenuation. If user selects 6 calls, and selects medium and low region, the system will make 3 calls at 0dB and 3 calls at 30dB attenuation level. If user selects all 2 levels, then it will make 2 calls on each level. Plus ability to select the phone # to be called. * options for HIHO test. # of attempts = 10, 25, 50, 100, 200, Wait time between attempts = 2, 5, 15, 30 minutes. Ability to select the phone # to be called. Call duration = 2 min. User selects standard tests or custom tests. The standard tests don’t provide any configuration for user, the custom test provide configurable options. User enters Handset model User selects the handset to be tested ( Blackberry, samsung, Nokia, Motorola,) and enters HS MAC, FW # , AP model #, FW #, Test engineer name and location. All this info is logged in the log file for the test. Handset initialization page System will send AT commands to the selected handset and display, connected status, Battery status, GSM RSSI, MSISDN, serial #, These results are displayed and also logged in log file. Graphic display * GSM/UMA status Test Setup * list of tests to be run * Initial delay ( for every test there will be 1 minute delay before start) Test Execution * Button to start/stop test * Test progress bar * List of selected tests and their status. ( waiting, running, etc) * Results summary for each test. Continuous Looping functions * AT command call status ( only for tests that make a call) * AT commands for GSM signal strength * AT command for battery capacity * sniffer parsing * capturing & saving UMA logs * checking link status between HS and laptop. Automated handset test Figure 8 - Handset functional test development – initial concept based on interview with users and supervisor