Sponsored Content
Top Forums Programming Arduino Project: iPhone to HM-10 BLE to NB-IoT Shield to NB-IoT Network to Internet to Linux Server Post 303043467 by Neo on Wednesday 29th of January 2020 08:15:44 AM
Old 01-29-2020
Update:

I've posted the high level overview, the schematic, links, a lot of pictures, screenshots, discussion, and all my testing /working code (for testing purposes only).

So, for now I'm going to call this Arduino UNO project / proof-of-concept "good enough" and move on to testing a different Ardunio module or shield.

If you like this demo or find anything useful, I'm happy to hear about it. Please consider this demo "like an online notebook" of my testing and my results. Raw, unpolished, the "real deal", and no artificial sweeteners added Smilie I tend to have a low attention span, so when I get a proof-of-concept like this up and running (and prove it works), even if the final results are not "polished", I then want to "call it good enough" and quickly move on to the next project.

If you want to improve the code and post your code back here, or elsewhere, that is even better. Share and share alike.

Either way, you are free to share and use any or all the the content in this test / demo (not designed nor created for production code); and so for now, this concludes:

Arduino Project: iPhone to HM-10 BLE to NB-IoT Shield to NB-IoT Network to Internet to Linux Server

Thanks!
These 2 Users Gave Thanks to Neo For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Linux for an internet server to an ISP

I just moved away from a T3 line back to a dial up I just wanted to know would a P200 with 64meg and a 4 gig hard drive be ok for a linux server for an additional 3 pcs all running win98. I will be dialing into an isp using a 56k v90 modem. Any support or help will be great. (3 Replies)
Discussion started by: izrailov
3 Replies

2. IP Networking

can i force connecting to local web server via internet network ?

Hello all this is general question , if i have web server installed in my local pc and i have client that connecting to that web server can i force it always to go via the internet network ? the reason im asking is .. that im noticed when i close my internet connection i still can connect to my... (2 Replies)
Discussion started by: umen
2 Replies

3. IP Networking

Can not access Linux server over the Internet

hi i have linux server connected to internet through a switch/router. i have opened a port on the router and i am able to connect to the server if iptables is off. but when it is on i cant. i want to create a rule in iptables so that it accepts packets coming from a particular datacard. it... (7 Replies)
Discussion started by: u.n.i.x
7 Replies

4. Programming

Arduino-cli - Uploading to Unknown Chinese Arduino Boards using the Arduino Command Line Interface

In my further exploration of Arduino, today I decided to install the arduino-cli on my mac today. https://github.com/arduino/arduino-cli I followed the instructions for macOS but when I got to this part: arduino-cli board list I got the dreaded "Unknown" Fully Qualified Board Name... (1 Reply)
Discussion started by: Neo
1 Replies

5. Programming

Arduino Project with NB-IoT (3GPP) and LoRa / LoRaWAN

My favorite projects are always related to the "latest" tech in command and control, networking and network communications. This Elecrow GSM/GPRS/EDGE SIM5360E 3G Shield seems to be the "latest and the greatest" as far as 3G and GPS, as far as I can see so far, but I has it drawbacks for sure.... (6 Replies)
Discussion started by: Neo
6 Replies

6. Programming

NB-IoT Arduino Shield from AIS (Thailand) First Impressions

Today I received my NB-IoT Arduino Shield for AIS (Thailand). Here is a "pinout" photo of the shield. My shield looks just like the one above, for the most part. I'll post another photo of the actual device later. When I received the shield in the mail, I went immediately to a local... (8 Replies)
Discussion started by: Neo
8 Replies

7. Programming

Elecrow GSM/GPRS/EDGE SIM5360E 3G Shield for Arduino

Normally I have very good experiences buying from AliExpress, but in this case with Elecrow, I'm disappointed. After confirming with Elecrow on AliExpress that their Elecrow GSM/GPRS/EDGE SIM5360E 3G Shield for Arduino would work with 3G SIM cards in Thailand, I purchased one. My plan was to... (1 Reply)
Discussion started by: Neo
1 Replies

8. Programming

Basic Arduino UNO Bluetooth Testing with the BLE 4.0 (CC2541, MLT-BT04 IC)

Here is a sketch to do basic testing for the Arduino UNO and the MLT-BT04. This BLE module works with IOS (iPhone) and I'll add some details on my IOS testing with an iPhone in a follow-up post. For now, here is the basic BLE (HM-10) sketch for the Arduino UNO: /* Arduino test-code... (7 Replies)
Discussion started by: Neo
7 Replies

9. Programming

Wuhan Coronavirus Status App for China - Rapid Prototype using MQTT and the IoT OnOff IOS App

With a little bit of work, was able to build a nice "Wuhan Coronavirus Status" app using MQTT and the IoT-OnOff app. More on this technique here: ESP32 (ESP-WROOM-32) as an MQTT Client Subscribed to Linux Server Load Average Messages The result turned out nice, I think. I like the look and... (10 Replies)
Discussion started by: Neo
10 Replies

10. Hardware

Arduino Robot Tank Project

Normally I'm not into kits, but I thought my wife would enjoy this one since she is a big fan of robots and droids on StarWars! We are done with the basic mechanical assembly and starting on the electronics assembly today. The robot's "brain" consists of three levels. The Arduino board, on... (5 Replies)
Discussion started by: Neo
5 Replies
Test::Inline::Section(3pm)				User Contributed Perl Documentation				Test::Inline::Section(3pm)

NAME
Test::Inline::Section - Implements a section of tests DESCRIPTION
This class implements a single section of tests. That is, a section of POD beginning with "=begin test" or "=begin testing". Types of Sections There are two types of code sections. The first, beginning with "=begin testing ...", contains a set of tests and other code to be executed at any time (within a set of specifyable constraints). The second, labelled "=begin testing SETUP", contains code to be executed at the beginning of the test script, before any of the other sections are executed. This allows any needed variables or environment to be set up before the tests are run. You can have more than one setup section, and they will be written to the test file in order of appearance. Test Section Header Syntax Some examples of the different types of test headers are as follows. # Normal anonymous test =begin testing ok( $foo == $bar, 'This is a test' ); =end testing # A named test. Also provides the number of tests to run. # Any test section can specify the number of tests. =begin testing my_method 1 ok( $foo->my_method, '->my_method returns true' ); =end testing # A named test with pre-requisites. # Note that ONLY named tests can have pre-requisites =begin testing this after my_method foo bar other_method Other::Class ok( $foo->this, '->this returns true' ); =end testing The first example shows a normal anonymous test. All anonymous test sections are considered low priority, and we be run, in order of appearance, AFTER all named tests have been run. Any and all arguments used after "testing" must be in the form of simple space seperated words. The first word is considered the "name" of the test. The intended use for these is generally to create one named test section for each function or method, but you can name them as you please. Test names must be unique, and are case sensitive. After the name, you can provide the word "after" and provide a list of other named tests that must be completed first in order to run this test. This is provided so that when errors are encounted, they are probably the result of this method or set of tests, and not in some other method that this one relies on. It makes debugging a lot easier. The word after is only a keyword when after the test name, so you can use a test name of after as well. The following are both legal =begin testing after after that =begin testing this after after The easiest and recommended way of labeling the tests is simple to name all tests after their methods, and put as a pre-requisite any other methods that the method you are testing calls. Test::Inline will take care of writing the tests to the test script in the correct order. Please note you can NOT define circular relationships in the prerequisites, or an error will occur. If a number is provided as the last value, it will be taken to mean the number of actual tests that will occur during the test section. While preparing to write the test files, the processor will try to use these to try to determine the number of files to write. If ALL test sections to be written to a particular file have a test count, then the script will use the total of these as a basic for providing Test::More with a plan. If ANY test sections to be written to a file do not have a test count, the test file with use "no_plan". Finally, Test::Inline will try to be forgiving in it's parsing of the tests. any missing prerequisites will be ignored. Also, as long as it does not break a prerequisite, all named tests will be attempted to be run in their order of appearance. METHODS
new my $Section = Test::Inline::Section->new( $pod ); The "new" constructor takes a string of POD, which must be a single section of relevant pod ( preferably produced by Test::Inline::ExtractHandler ), and creates a new section object for it. Returns a new "Test::Inline::Section" object if passed POD in the form "=begin testing ...". Returns "undef" on error. parse my $SectionList = Test::Inline::Section( @elements ); Since version 1.50 Test::Inline has been extracting package statements so that as the sections are extracted, we can determine which sections belong to which packages, and seperate them accordingly. The "parse" method takes all of the elements from a file, and returns all of the Sections. By doing it here, we can track the package context and set it in the Sections. setup my $run_first = $Section->setup; The "setup" accessor indicates that this section is a "setup" section, to be run at the beginning of the generated test script. Returns true if this is a setup section, false otherwise. example my $just_compile = $Section->example; The "example" accessor indicates that this section is an "example" section, to be compile-tested instead of run. Returns true if this is an example section, false otherwise. context The "context" method returns the package context of the unit test section, or false if the unit test section appeared out of context. name The "name" method returns the name of the test section, or false if the test if anonymous. tests The "tests" method returns the number of Test::Builder-compatible tests that will run within the test section. Returns "undef" if the number of tests is unknown. begin For use mainly in debugging, the "begin" method returns the literal string of the begin line/paragraph. anonymous my $is_anonymous = $Section->anonymous; The "anonymous" method returns true if the test section is an unnamed anonymous section, or false if it is a named section or a setup section. after my @names = $Section->after; The "after" method returns the list of other named tests that this test section says it should be run after. Returns a list of test name, or the null list "()" if the test does not have to run after any other named tests. classes my @classes = $Section->classes; The "classes" method returns the list of test classes that the test depends on, and should be run before the tests. These values are used to determine the set of class-level dependencies for the entire test file. Returns a list of class names, or the null list "()" if the test does not have any class-level dependencies. content my $code = $Section->content; The "content" method returns the actual testing code contents of the section, with the leading "=begin" and trailing "=end" removed. Returns a string containing the code, or the null string "" if the section was empty. SUPPORT
See the main SUPPORT section. AUTHOR
Adam Kennedy <adamk@cpan.org>, <http://ali.as/> COPYRIGHT
Copyright 2004 - 2010 Adam Kennedy. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module. perl v5.12.4 2010-11-22 Test::Inline::Section(3pm)
All times are GMT -4. The time now is 01:23 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy