v3.26.1
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME (LOSS) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Revenues:        
Total revenues $ 43,984 $ 40,223 $ 78,322 $ 71,896
Cost of revenues:        
Total cost of revenues 29,138 23,708 46,879 40,398
Gross profit 14,846 16,515 31,443 31,498
Operating costs and expenses:        
Research and development 5,301 4,820 11,111 9,355
Sales and marketing 6,441 3,951 12,063 7,885
General and administrative 7,756 4,703 14,693 9,193
Depreciation and amortization 2,243 1,761 4,037 3,825
Impairment of capitalized software 341 0 341 384
Total operating costs and expenses 22,082 15,235 42,245 30,642
Operating income (loss) (7,236) 1,280 (10,802) 856
Other (expense) income:        
Interest expense (1,210) (933) (2,271) (1,959)
Other income (expense), net 43 182 168 485
Income (loss) before income taxes (8,403) 529 (12,905) (618)
Income tax provision (benefit) 35 22 69 45
Income (loss) from continuing operations (8,438) 507 (12,974) (663)
Income (loss) from discontinued operations (net of income tax provision (benefit) of $—, $—, $— and $400, respectively) 0 0 0 (400)
Net income (loss) (8,438) 507 (12,974) (1,063)
Preferred stock dividends 0 (883) 0 (1,747)
Preferred stock exchange deemed contribution 0 0 15,100 0
Net income (loss) attributable to common stockholders $ (8,438) $ (376) $ 2,126 $ (2,810)
Basic        
Continuing operations, basic (in dollars per share) $ (0.52) $ (0.03) $ 0.13 $ (0.16)
Discontinued operations, basic (in dollars per share) 0 0 0 (0.03)
Basic earnings (loss) per share (in dollars per share) [1] (0.52) (0.03) 0.13 (0.19)
Diluted        
Continuing operations, diluted (in dollars per share) (0.52) (0.03) 0.13 (0.16)
Discontinued operations, diluted (in dollars per share) 0 0 0 (0.03)
Diluted earnings (loss) per share (in dollars per share) [1] $ (0.52) $ (0.03) $ 0.13 $ (0.19)
Weighted-average shares used in computation of net earnings (loss) per share        
Basic (in shares) 16,317,614 15,023,832 16,206,141 15,012,918
Diluted (in shares) 16,317,614 15,023,832 16,672,326 15,012,918
Other comprehensive income:        
Foreign currency translation adjustment $ 44 $ 109 $ 17 $ 115
Comprehensive income (loss) (8,394) 616 (12,957) (948)
Product        
Revenues:        
Total revenues 31,654 28,183 53,656 47,876
Cost of revenues:        
Total cost of revenues 27,756 22,365 44,138 37,761
Mobile solutions        
Revenues:        
Total revenues 17,291 13,672 33,979 31,462
Fixed wireless access solutions        
Revenues:        
Total revenues 14,363 14,511 19,677 16,414
Software services and other        
Revenues:        
Total revenues 12,330 12,040 24,666 24,020
Cost of revenues:        
Total cost of revenues $ 1,382 $ 1,343 $ 2,741 $ 2,637
[1] *Rounding may impact summation of amounts