Annual report [Section 13 and 15(d), not S-K Item 405]

COMMON STOCK OPTIONS AND WARRANTS (Details - Options activity)

v3.25.1
COMMON STOCK OPTIONS AND WARRANTS (Details - Options activity)
12 Months Ended
Dec. 31, 2024
USD ($)
$ / shares
shares
Dec. 31, 2023
USD ($)
$ / shares
shares
Dec. 31, 2022
USD ($)
$ / shares
shares
Warrant [Member]      
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]      
Aggregate intrinsic value outstanding at beginning | $  
Aggregate intrinsic value outstanding at end | $
Number of warrants, exercisable | shares 44,644  
Weighted average exercise price, exercisable | $ / shares $ 7.70  
Weighted average remaining contractual term (years), exercisable   8 months 12 days 9 months 18 days
Aggregate intrinsic value, exercisable | $  
Number of warrants outstanding at beginning | shares 44,644 80,091  
Weighted average exercise price outstanding at beginning | $ / shares $ 7.70 $ 8.63  
Warrants expired, forfeited, cancelled or exercised | shares (344,644) (102,947)  
Weighted average exercise price, warrants expired, forfeited, cancelled or exercised | $ / shares  
Warrants issued | shares 300,000  
Weighted average exercise price, warrants issued | $ / shares $ 3.00  
Number of warrants outstanding at end | shares 44,644 80,091
Weighted average exercise price outstanding at end | $ / shares $ 7.70 $ 8.63
Weighted average remaining contractual term (years)   8 months 12 days  
Weighted average remaining contractual term (years) , Warrants issued 4 years 5 months 19 days    
Share-Based Payment Arrangement, Option [Member]      
Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]      
Shares outstanding at beginning | shares 1,387,775 926,266  
Weighted average exercise price outstanding at beginning | $ / shares $ 5.23 $ 5.74  
Weighted average remaining contractual term (years) outstanding 2 years 3 years 3 years 3 months 18 days
Aggregate intrinsic value outstanding at beginning | $  
Shares, granted | shares 463,117  
Weighted average exercise price, granted | $ / shares $ 4.22  
Weighted average remaining contractual term (years), granted   4 years 4 months 6 days  
Shares, exercised/forfeited | shares (781,323) (1,608)  
Weighted average exercise price, exercised/forfeited | $ / shares $ 5.17 $ 14.00  
Shares outstanding at end | shares 606,452 1,387,775 926,266
Weighted average exercise price outstanding at end | $ / shares $ 5.29 $ 5.23 $ 5.74
Aggregate intrinsic value outstanding at end | $ $ 514,394
Number of warrants, exercisable | shares 442,445 581,324  
Weighted average exercise price, exercisable | $ / shares $ 5.50 $ 5.38  
Weighted average remaining contractual term (years), exercisable 1 year 7 months 6 days 1 year 9 months 18 days  
Aggregate intrinsic value, exercisable | $ $ 296,145