Annual report pursuant to Section 13 and 15(d)

Note 2 - Shareholders' Equity (Details Textual)

v3.20.2
Note 2 - Shareholders' Equity (Details Textual) - USD ($)
1 Months Ended 6 Months Ended 12 Months Ended
Apr. 25, 2017
Feb. 29, 2020
Jun. 30, 2020
Dec. 31, 2019
Jun. 30, 2019
Dec. 31, 2018
Sep. 30, 2020
Sep. 30, 2019
Nov. 13, 2014
Stock Repurchase Program, Remaining Authorized Repurchase Amount             $ 4,980,671   $ 8,000,000
Stock Repurchase Program, Increase in Authorized Amount $ 4,000,000                
Stock Repurchase Program, Authorized Amount $ 12,000,000                
Common Stock, Shares Authorized (in shares)             50,000,000 50,000,000  
Common Stock, Par or Stated Value Per Share (in dollars per share)             $ 0.01 $ 0.01  
Preferred Stock, Shares Authorized (in shares)             500,000 500,000  
Preferred Stock, Shares Issued, Total (in shares)             0 0  
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant (in shares)             769,545    
Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total             $ 1,938,136    
Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)             3 years 328 days    
Share-based Payment Arrangement, Expense             $ 773,555 $ 1,729,025  
Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross (in shares)             121,350 172,000  
Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year)             5 years 259 days 4 years  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)             4 years 259 days 3 years  
Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price (in dollars per share)             $ 12.43 $ 12.17  
Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number (in shares)             44,000 36,000  
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period (in shares)             26,750 7,750  
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value             $ 332,468 $ 81,728  
Stock Repurchased During Period, Shares (in shares)             41,796 40,933  
Treasury Stock Acquired, Average Cost Per Share (in dollars per share)             $ 10.26 $ 13.51  
Payment, Tax Withholding, Share-based Payment Arrangement             $ 176,416 $ 553,165  
Preferred Stock, Shares Outstanding, Ending Balance (in shares)             0 0  
Employee Stock Purchase Plan [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant (in shares)             219,623    
Share-based Compensation Arrangement by Share-based Payment Award, Market Price Percentage, Offering Date             85.00%    
Stock Issued During Period, Shares, Employee Stock Purchase Plans (in shares)     15,116 15,107 19,923 17,312      
Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price (in dollars per share)     $ 11.85 $ 11.23 $ 8.43        
Payment, Tax Withholding, Share-based Payment Arrangement             $ 84,595    
Share-based Compensation Arrangement by Share-based Payment Award, Number of Additional Shares Authorized (in shares)   200,000              
Minimum [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)             3 years    
Maximum [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)             5 years    
Share-based Payment Arrangement, Option [Member] | Minimum [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)             3 years    
Share-based Payment Arrangement, Option [Member] | Maximum [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)             5 years    
Cashless Method Stock Option Exercised [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period (in shares)             14,688 6,750  
Restricted Stock [Member] | Minimum [Member] | Employees [Member] | Stock Compensation Plan 2007 [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)             1 year    
Restricted Stock [Member] | Maximum [Member] | Employees [Member] | Stock Compensation Plan 2007 [Member]                  
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)             10 years    
Selling, General and Administrative Expenses [Member]                  
Share-based Payment Arrangement, Expense             $ 752,011 $ 1,638,829  
Cost of Sales [Member]                  
Share-based Payment Arrangement, Expense             $ 21,544 $ 90,196  
Undesignated Shares [Member]                  
Preferred Stock, Shares Authorized (in shares)             5,000,000    
Series B Preferred Stock [Member]                  
Preferred Stock, Shares Authorized (in shares)             500,000    
Preferred Stock, Shares Issued, Total (in shares)             0    
Preferred Stock, Shares Outstanding, Ending Balance (in shares)             0