Stockholders' Equity (Details - Warrants outstanding) - Warrant [Member] - $ / shares | 3 Months Ended | |
Mar. 31, 2023 | Dec. 31, 2022 |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Outstanding | 545,401 | 545,401 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
April 2018 Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 2,079 | |
Warrant expiration date | May 31, 2023 | |
Class of Warrant or Right, Outstanding | 1,720 | 1,720 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
April 2018 Placement Agent Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 2,676 | |
Warrant expiration date | Apr. 09, 2023 | |
Class of Warrant or Right, Outstanding | 117 | 117 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
October 2018 Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 125.40 | |
Warrant expiration date | Oct. 03, 2025 | |
Class of Warrant or Right, Outstanding | 32,486 | 32,486 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
October 2018 Underwriter Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 156.72 | |
Warrant expiration date | Oct. 01, 2023 | |
Class of Warrant or Right, Outstanding | 2,438 | 2,438 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
Nov 2019 Placement Agent Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 82.50 | |
Warrant expiration date | Nov. 18, 2024 | |
Class of Warrant or Right, Outstanding | 1,138 | 1,138 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
Feb 2020 Registered Direct Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 104.52 | |
Warrant expiration date | Aug. 06, 2025 | |
Class of Warrant or Right, Outstanding | 16,425 | 16,425 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
Feb 2020 Placement Agent Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 132.45 | |
Warrant expiration date | Feb. 04, 2025 | |
Class of Warrant or Right, Outstanding | 1,233 | 1,233 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
Feb 2020 Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 48 | |
Warrant expiration date | Feb. 13, 2025 | |
Class of Warrant or Right, Outstanding | 110,557 | 110,557 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
Feb 2020 Underwriter Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 60 | |
Warrant expiration date | Feb. 11, 2025 | |
Class of Warrant or Right, Outstanding | 12,501 | 12,501 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
April 2020 Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 26.52 | |
Warrant expiration date | Oct. 02, 2025 | |
Class of Warrant or Right, Outstanding | 35,691 | 35,691 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
April 2020 Placement Agent Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 35.03 | |
Warrant expiration date | Mar. 31, 2025 | |
Class of Warrant or Right, Outstanding | 3,481 | 3,481 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
January 2021 Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 36 | |
Warrant expiration date | Jul. 27, 2026 | |
Class of Warrant or Right, Outstanding | 285,061 | 285,061 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
January 2021 Placement Agent Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 46.05 | |
Warrant expiration date | Jul. 27, 2026 | |
Class of Warrant or Right, Outstanding | 28,509 | 28,509 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |
February 2021 Placement Agent Warrants [Member] | | |
Class of Warrant or Right [Line Items] | | |
Class of Warrant or Right, Exercise Price of Warrants or Rights | $ 51.30 | |
Warrant expiration date | Feb. 12, 2026 | |
Class of Warrant or Right, Outstanding | 14,044 | 14,044 |
Warrants issued, shares | 0 | |
Warrants exercised, shares | 0 | |
Warrants expired, shares | 0 | |